媒体播放器缓存
- iOS
更新时间不可用
enableAutoRemoveCache:
设置是否自动删除缓存的媒体文件。
- (int)enableAutoRemoveCache:(BOOL)enable NS_SWIFT_NAME(enableAutoRemoveCache(_:));当缓存的媒体文件超过设置的数量或大小限制时,如果启用该功能,SDK 会自动删除最近最少使用的缓存文件。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败,详见 AgoraMediaPlayerReason。
所属接口类
cacheDir
获取缓存媒体文件的存储路径。
- (NSString *)cacheDir NS_SWIFT_NAME(cacheDir());如果在调用该方法前未调用 setCacheDir: 方法设置缓存媒体文件的存储路径,则该方法返回 SDK 默认使用的存储路径。
返回值
- 方法调用成功时,返回缓存媒体文件的存储路径。
- 方法调用失败,返回 nil,详见 AgoraMediaPlayerReason。
所属接口类
cacheFileCount
获取已缓存的媒体文件数量。
- (NSInteger)cacheFileCount NS_SWIFT_NAME(cacheFileCount());返回值
- 方法调用成功,返回已缓存的媒体文件数量。
- 方法调用失败,返回小于 0 的错误码,详见 AgoraMediaPlayerReason。
所属接口类
maxCacheFileCount
获取可缓存的媒体文件的最大数量。
- (NSInteger)maxCacheFileCount NS_SWIFT_NAME(maxCacheFileCount());默认情况下,最多可以缓存 1,000 个媒体文件。
返回值
方法调用成功,返回可缓存的媒体文件的最大数量。
- < 0:方法调用失败,返回错误码,详见 AgoraMediaPlayerReason。
所属接口类
maxCacheFileSize
获取缓存媒体文件的聚合存储空间的最大大小。
- (NSInteger)maxCacheFileSize NS_SWIFT_NAME(maxCacheFileSize());你可以调用 setMaxCacheFileSize: 方法根据你的使用场景设置该限制。默认情况下,缓存媒体文件的聚合存储空间的最大大小为 1 GB。
返回值
- 方法调用成功,返回缓存媒体文件的聚合存储空间的最大大小(单位为字节)。
- 方法调用失败,返回小于 0 的错误码,详见 AgoraMediaPlayerReason。
所属接口类
removeAllCaches
删除媒体播放器中所有缓存的媒体文件。
- (int)removeAllCaches NS_SWIFT_NAME(removeAllCaches());注: removeAllCaches 不会删除当前正在播放的缓存媒体文件。
返回值
- 0:方法调用成功。
- < 0:方法调用失败,详见 AgoraMediaPlayerReason。
所属接口类
removeCacheByUri:
删除缓存的媒体文件。
- (int)removeCacheByUri:(NSString *)uri NS_SWIFT_NAME(removeCache(byUri:));注: removeCacheByUri: 当前正在播放的缓存媒体文件不会被删除。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败,详见 AgoraMediaPlayerReason。
所属接口类
removeOldCache
删除最少使用的缓存媒体文件。
- (int)removeOldCache NS_SWIFT_NAME(removeOldCache());当缓存文件的存储空间即将达到上限时,你可以调用该方法删除一个缓存媒体文件。SDK 会删除最少使用的缓存媒体文件。
注: removeOldCache 当前不会删除正在播放的缓存媒体文件。
返回值
- 0:方法调用成功。
- < 0:方法调用失败,详见 AgoraMediaPlayerReason。
所属接口类
setCacheDir:
设置要缓存的媒体文件的存储路径。
- (int)setCacheDir:(NSString *)cacheDir NS_SWIFT_NAME(setCacheDir(_:));注: 请确保在调用该方法前已初始化 AgoraRtcEngineKit。
参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。详见 AgoraMediaPlayerReason。
所属接口类
setMaxCacheFileCount:
设置可缓存的媒体文件数量上限。
- (int)setMaxCacheFileCount:(NSInteger)count NS_SWIFT_NAME(setMaxCacheFileCount(_:));参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。详见 AgoraMediaPlayerReason。
所属接口类
setMaxCacheFileSize:
设置用于缓存媒体文件的聚合存储空间的最大大小。
- (int)setMaxCacheFileSize:(NSInteger)cacheSize NS_SWIFT_NAME(setMaxCacheFileSize(_:));参数
返回值
- 0:方法调用成功。
- < 0:方法调用失败,详见 AgoraMediaPlayerReason。
所属接口类
sharedInstance
获取 AgoraRtcMediaPlayerCacheManagerProtocol 实例。
+ (instancetype)sharedInstance NS_SWIFT_NAME(sharedInstance());返回值
方法调用成功,返回 AgoraRtcMediaPlayerCacheManagerProtocol 实例。
所属接口类
AgoraRtcMediaPlayer:cacheStats:
上报正在缓存的媒体文件的统计信息。
- (void)AgoraRtcMediaPlayer:(id<AgoraRtcMediaPlayerProtocol> _Nonnull)playerKit cacheStats:(AgoraMediaPlayerCacheStatistics *_Nonnull)info NS_SWIFT_NAME(AgoraRtcMediaPlayer(_:cacheStats:));触发时机
该回调在你调用 openWithMediaSource: 方法并将 enableCache 设置为 YES 后,每秒触发一次。
参数
| 参数名 | 描述 |
|---|---|
playerKit | |
info | 正在缓存的媒体文件的统计信息。详见 AgoraMediaPlayerCacheStatistics。 |