媒体播放器缓存
enableAutoRemoveCache
设置是否自动删除缓存的媒体文件。
Java
int enableAutoRemoveCache(boolean enable);
当缓存的媒体文件数量或大小超过设置的限制时,启用该功能后,SDK 会自动删除最近最少使用的缓存文件。
参数
- enable
- 是否启用 SDK 自动删除缓存的媒体文件:
- true:自动删除缓存的媒体文件。
- false:(默认)不自动删除缓存的媒体文件。
返回值
- 0:方法调用成功。
- < 0:方法调用失败,详见 MediaPlayerReason。
getCacheDir
获取缓存媒体文件的存储路径。
Java
String getCacheDir();
如果在调用该方法之前未调用 setCacheDir 设置缓存媒体文件的存储路径,则该方法返回 SDK 默认使用的存储路径。
返回值
方法调用成功时,返回缓存媒体文件的存储路径。 方法调用失败,返回空字符串。
所属接口类getCacheFileCount
获取已缓存的媒体文件数量。
Java
int getCacheFileCount();
返回值
- 0:方法调用成功,返回已缓存的媒体文件数量。
- < 0:方法调用失败,详见 MediaPlayerReason。
getMaxCacheFileCount
获取可缓存的媒体文件的最大数量。
Java
int getMaxCacheFileCount();
默认情况下,可缓存的媒体文件最大数量为 1000。
返回值
- 0:方法调用成功,返回获取可缓存的媒体文件的最大数量。
- < 0:方法调用失败,详见 MediaPlayerReason。
getMaxCacheFileSize
获取缓存媒体文件聚合存储空间的最大大小。
Java
long getMaxCacheFileSize();
你可以调用 setMaxCacheFileSize 方法根据实际场景设置缓存媒体文件聚合存储空间的最大大小。
返回值
- > 0:方法调用成功,返回缓存媒体文件聚合存储空间的最大大小(单位为字节)。
- < 0:方法调用失败,详见 MediaPlayerReason。
removeAllCaches
删除媒体播放器中所有缓存的媒体文件。
Java
int removeAllCaches();
信息
当前正在播放的缓存媒体文件不会被删除。
返回值
- 0:方法调用成功。
- < 0:方法调用失败,详见 MediaPlayerReason。
removeCacheByUri
删除缓存的媒体文件。
Java
int removeCacheByUri(String uri);
信息
当前正在播放的缓存媒体文件不会被删除。
参数
- uri
- 要删除的媒体文件的 URI(统一资源标识符)。
返回值
- 0:方法调用成功。
- < 0:方法调用失败,详见 MediaPlayerReason。
removeOldCache
删除最少使用的缓存媒体文件。
Java
int removeOldCache();
你可以在缓存文件的存储空间即将达到上限时调用该方法。调用该方法后,SDK 会删除最少使用的缓存媒体文件。
信息
removeOldCache 不会删除当前正在播放的缓存媒体文件。
返回值
- 0:方法调用成功。
- < 0:方法调用失败,详见 MediaPlayerReason。
setCacheDir
设置要缓存的媒体文件的存储路径。
Java
int setCacheDir(String path);
信息
请确保在调用该方法前已初始化 RtcEngine。
参数
- path
- 要缓存的媒体文件的绝对路径。确保该目录已存在且可写。
返回值
- 0:方法调用成功。
- < 0:方法调用失败,详见 MediaPlayerReason。
setMaxCacheFileCount
设置可缓存的媒体文件数量上限。
Java
int setMaxCacheFileCount(int count);
参数
- count
- 可缓存的媒体文件数量上限(默认值为 1000)。
返回值
- 0:方法调用成功。
- < 0:方法调用失败,详见 MediaPlayerReason。
setMaxCacheFileSize
设置缓存媒体文件的聚合存储空间的最大大小。
Java
int setMaxCacheFileSize(long cacheSize);
参数
- cacheSize
- 缓存媒体文件的聚合存储空间的最大大小,单位为字节。(默认值为 1 GB。)
返回值
- 0:方法调用成功。
- < 0:方法调用失败,详见 MediaPlayerReason。
onPlayerCacheStats
报告正在缓存的媒体文件的统计信息回调。
Java
void onPlayerCacheStats(CacheStatistics stats)
调用 openWithMediaSource 方法并将 enableCache 设置为 true 后,SDK 每秒触发一次该回调。
触发时机
该回调在调用 openWithMediaSource 方法并将 enableCache 设置为 true 后,每秒触发一次。
参数
- stats
- 正在缓存的媒体文件的统计信息。详见 CacheStatistics。