帮你快速理解、总结文档立即下载

快速跑通云渲染 Android SDK

最近更新时间:2026-07-16 11:21:00

我的收藏

1. 接入 SDK

在 Android 的 app 目录下新建 libs 文件夹,并放入 virtualman-stream-sdk-release-X.X.X.aarLiteAVSDK_TRTC_X.X.X.aar,在 build.gradle 配置中增加如下依赖:
android {
packagingOptions {
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/NOTICE'
exclude 'META-INF/LICENSE'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
}
}

dependencies {
implementation 'com.google.code.gson:gson:2.9.0'
implementation 'com.squareup.okhttp3:okhttp:4.10.0'
implementation files('libs/LiteAVSDK_TRTC_x.x.x.aar')
implementation files('libs/virtualman-stream-sdk-release-x.x.x.aar')
}

2. 权限说明

以下权限已在 SDK 内部 AndroidManifest.xml 中声明,集成 AAR 后会自动 merge 到您的项目,无需手动添加
权限
来源
说明
INTERNET
数智人 SDK
HTTP 建流请求 + WebSocket 连接
ACCESS_NETWORK_STATE
TRTC SDK
网络状态监测
ACCESS_WIFI_STATE
TRTC SDK
Wi-Fi 网络信息
MODIFY_AUDIO_SETTINGS
TRTC SDK
音频路由控制
BLUETOOTH
TRTC SDK
蓝牙耳机支持
此外,Demo 中包含语音驱动功能,因此额外申请了 RECORD_AUDIO 运行时权限。

3. 初始化及销毁

在代码中创建 Virtualman 并添加到布局:
val mVirtualman = Virtualman(this)
containerLayout.addView(mVirtualman, FrameLayout.LayoutParams(
FrameLayout.LayoutParams.MATCH_PARENT,
FrameLayout.LayoutParams.MATCH_PARENT
))
调用 init 进行建流初始化:
val params = VirtualmanParams()
params.appkey = "xxx"
params.accesstoken = "xxx"

// 方式一:项目建流
params.virtualmanProjectParams = VirtualmanProjectParams().apply {
virtualmanProjectId = "xxx"
}

// 方式二:资产建流
params.assetVirtualmanParams = AssetVirtualmanParams().apply {
assetVirtualmanKey = "xxx"
}

mVirtualman.init(params, { result ->
Log.i(TAG, "建流结果: $result")
})
在建流成功后,按需调用 sendText 发送文本:
mVirtualman.sendText(SendTextParams(text = "你好"))
onDestroy 中关闭数智人流,否则会占用后台资源:
mVirtualman.close()

4. 运行 Demo

src/main/java/com/tencent/virtualman_demo_app/Config.kt 中填入您的数智人项目凭证:
object Config {
// 数智人 AppKey
const val APP_KEY = "xxx"
// 数智人 AccessToken
const val ACCESS_TOKEN = "xxx"

// 建流方式1:AssetVirtualman
const val ASSET_VIRTUALMAN_KEY = "xxx"

// 建流方式2:VirtualmanProject
const val VIRTUALMAN_PROJECT_ID = "xxx"
}