Flutter SDK 接入
确认运行环境
Flutter >=3.13.0,Dart >=3.1.0 <4.0.0。支持 Android、iOS、macOS、OpenHarmony 和 HarmonyOS NEXT。
添加 SDK 依赖
yaml
dependencies:
flutter:
sdk: flutter
tirtc_flutter: 2.4.0-alpha.3构建 Android 目标时,在 android/build.gradle.kts 加入:
kotlin
allprojects {
repositories {
google()
mavenCentral()
maven {
url = uri("http://repo-sdk.tange-ai.com/repository/maven-public/")
isAllowInsecureProtocol = true
credentials {
username = "tange_user"
password = "tange_user"
}
}
}
}初始化并查询录像
appId 来自申请开通。appAccessToken 由自己的业务服务端签发,见云端签发 Token。查询时间使用 UTC Unix 毫秒。
dart
import 'package:tirtc_flutter/tirtc_flutter.dart';
final initCode = await TiCloudStorage.init(appId: appId);
if (initCode != kTiCloudStorageErrorOk) {
throw StateError(TiCloudStorage.errorToString(initCode));
}
final cloudStorage = TiCloudStorage(token: appAccessToken);
final result = await cloudStorage.listRecordings(
startTimeMs: startTimeMs,
endTimeMs: endTimeMs,
);
if (!result.success) {
throw StateError('list recordings failed');
}
final recordings = result.data!;页面退出时先停止 Replay,再 detach 并 dispose 两个 Output,随后 dispose Replay。确认不再访问这台设备后,再调用 cloudStorage.dispose()。
配置回放速度
Replay 支持 x0_125、x0_25、x0_5、x1、x2、x4、x8 七档速度,分别对应 1/8、1/4、1/2、1、2、4、8 倍速。三档慢速采用持帧显示;非 1 倍速时 Audio Output 自动静音。
dart
replay.setSpeed(TiCloudStorageReplaySpeed.x0_5);确认可以查询录像
查询成功且 recordings 非空,说明初始化和 Token 鉴权均已通过,查询范围内也存在录像。列表为空时,确认查询范围覆盖设备已经完成上传的 UTC 时间。