其他
更新时间: 2024/03/07 11:14:43
其他
获取 SDK 缓存文件大小
计算 SDK 缓存文件的大小,例如收发图片消息的缩略图,语音消息录音文件等等。 仅 Android, Windows 和 macOS 可用
- API 原型
dartclass SettingsService {
///
/// 计算 SDK 缓存文件的大小,例如收发图片消息的缩略图,语音消息录音文件等等。*Android可用*
///
/// [fileTypes] 文件类型列表(Windows和macOS暂支持列表中的第一个) <br>
/// [startTime] 开始时间,毫秒,若设置为0 表示不限起始时间(Windows 和 macOS 暂不支持) <br>
/// [endTime] 结束时间,毫秒,若设置为0 表示不限结束时间 <br>
///
Future<NIMResult<int>> getSizeOfDirCache(
List<NIMDirCacheFileType> fileTypes, int startTime, int endTime);
}
- 使用示例
dartNimCore.instance.settingsService.getSizeOfDirCache(
[NIMDirCacheFileType.audio, NIMDirCacheFileType.video], 0, 0
).then((size) => print('cache size: $size'));
删除 SDK 本地缓存
删除 SDK 指定类型的缓存文件,例如收发图片消息的缩略图,语音消息录音文件等等。仅 Android 可用
- API 原型
dartclass SettingsService {
///
/// 删除 SDK 指定类型的缓存文件,例如收发图片消息的缩略图,语音消息录音文件等等。*Android可用*
///
/// [fileTypes] 文件类型列表(Windows和macOS暂支持列表中的第一个) <br>
/// [startTime] 开始时间,毫秒,若设置为0 表示不限起始时间(Windows 和 macOS 暂不支持) <br>
/// [endTime] 结束时间,毫秒,若设置为0 表示不限结束时间 <br>
///
Future<NIMResult<void>> clearDirCache(
List<NIMDirCacheFileType> fileTypes, int startTime, int endTime);
}
- 使用示例
dartNimCore.instance.settingsService.clearDirCache(
[NIMDirCacheFileType.audio, NIMDirCacheFileType.video], 0, 0
).then(() => print('clear dir cache'));
日志文件压缩
将日志文件以 zip 格式压缩,返回指定 zip 文件的路径。(Windows 和 macOS 暂不支持)
- API 原型
dartclass SettingsService {
/// 打包日志文件,并返回文件路径
Future<NIMResult<String>> archiveLogs();
}
- 使用示例
dartNimCore.instance.settingsService.archiveLogs()
.then((path) => print('log path: $path'));
主动上传日志消息
- API 原型
dartclass SettingsService {
/// 打包日志文件并上传
/// 返回日志文件的 url 地址(Windows 和 macOS 暂不支持)
///
/// [chatroomId] 聊天室ID 如果没有(Windows 和 macOS 暂不支持) <br>
/// [comment] 日志评论, 可选, 最长4096字符 <br>
/// [partial] true:上传全部/ false: 上传全部。 **仅 Android 可用**
///
Future<NIMResult<String>> uploadLogs({
String? chatroomId,
String? comment,
bool partial = true,
});
}
- 参数说明
参数 | 说明 |
---|---|
chatroomId | 聊天室 ID 如果没有,填"" |
comment | 日志评论, 可选, 最长 4096 字符 |
partial | true: 上传部分; false: 上传全部 仅 Android 可用 |
- 示例
dartNimCore.instance.settingsService.uploadLogs(
comment: 'comment message'
).then((url) => print('log url: $url'));
此文档是否对你有帮助?