tencent cloud

腾讯特效 SDK

动态与公告
产品动态
关于腾讯特效 SDK V3.5 版本更新公告
关于腾讯特效 SDK V3.0 版本相关接口及素材变更公告
产品简介
产品概述
产品功能
基本概念
产品优势
应用场景
购买指南
价格总览
购买流程
欠费退费说明
新手指引
Demo 体验
免费测试
License 指引
移动端 License 新增与续期
PC 端 License 新增与续期
Web端 License 新增与续期
常见问题
SDK 下载
功能说明
SDK 下载
版本历史
SDK 集成指引(无 UI)
通用集成腾讯特效
原子能力集成指引
SDK 集成指引(含 UI)
通用集成腾讯特效
直播 SDK 集成腾讯特效
TRTC SDK 集成腾讯特效
短视频 SDK 集成腾讯特效
Avatar 虚拟人集成指引
API 文档
iOS
Android
Flutter
Web
功能实践
SDK 包瘦身
SDK 集成问题排查
性能调优
效果调优
素材使用
美颜参数说明
美颜场景推荐参数
短视频企业版迁移指引
第三方推流接入美颜(Flutter)
小程序美颜特效实践
素材制作工具使用
Web 美颜特效
产品概述
快速上手
SDK 接入
API 文档
控制台指南
Demo 体验
内置素材总览
实践教程
常见问题
常见问题
通用类相关
技术类相关
License 相关
旧版文档
美颜场景推荐参数
美颜参数表
一分钟集成 TRTC
一分钟集成直播
TE SDK 政策
隐私协议
数据处理和安全协议
联系我们

Android

PDF
聚焦模式
字号
最后更新时间: 2025-10-15 15:28:19

1. Android release 包报错找不到某些方法,如何解决?

如果您在打 release 包时,启用了编译优化(把 minifyEnabled 设置为 true),会裁掉一些未在 java 层调用的代码,而这些代码有可能会被 native 层调用,从而引起 no xxx method 的异常。
如果您启用了这样的编译优化,那就要添加这些 keep 规则,防止 xmagic 的代码被裁掉:
-keep class com.tencent.xmagic.** { *;}
-keep class org.light.** { *;}
-keep class org.libpag.** { *;}
-keep class org.extra.** { *;}
-keep class com.gyailib.**{ *;}
-keep class com.tencent.cloud.iai.lib.** { *;}
-keep class com.tencent.beacon.** { *;}
-keep class com.tencent.qimei.** { *;}
-keep class androidx.exifinterface.** { *;}

2. Android SDK 集成到宿主工程报 gson 库冲突,如何解决?

在宿主工程 build.gradle 文件中添加如下代码:
Android{
configurations {
all*.exclude group: 'com.google.code.gson'
}
}

3. Android targetSdkVersion 为31或更高时,so 库没有加载成功?或者无法使用 GAN 类型特效(例如童话脸、童年泡泡糖等)?

Android targetSdkVersion 为31或更高版本时需要在 app 模块下找到 AndroidManifest.xml 文件,在 application 标签内加入如下标签:
<uses-native-library
android:name="libOpenCL.so"
android:required="false" />
//true 表示libOpenCL是当前app必需的。如果没有此库,系统将不允许app安装。不建议设置为true,否则可能导致用户无法安装app。
//false 表示libOpenCL不是当前app必需的。无论有没有此库,都可以正常安装app。如果设备有此库,腾讯特效SDK里的GAN类型特效能正常生效(例如童话脸、国漫脸)。如果设备没有此库,GAN类型不会生效,但也不影响SDK内其他功能的使用。
//关于uses-native-library的说明,请参考Android 官网介绍:https://developer.android.com/guide/topics/manifest/uses-native-library-element
具体请参见 开发指引

4. 使用美颜时传递的纹理是横向纹理,如何解决?

可以使用 demo 中工具类TextureConverter.java 的convert 方法对纹理进行旋转,转换为竖屏,然后再传递给美颜 SDK。
/**
* 此方法用于对rgba纹理进行旋转和镜像处理。处理过程为:先顺时针旋转rotation度(可取值0,90,180,270),再进行左右翻转(flipHorizontal)和 上下翻转(flipVertical)。
* 使用场景:某些推流SDK返回的纹理是横屏纹理或者画面中人物朝向不对,而腾讯特效SDK要求纹理中的人物是正向的,所以可以通过此方法对纹理进行转换。
*
* @param srcID rgba纹理
* @param width 纹理宽度
* @param height 纹理高度
* @param rotation 需要进行旋转的角度。
* @return 旋转后的纹理,注意:如果旋转90或者270度,那么宽度需要进行交换。
*/
public int convert(int srcID, int width, int height, @RotationDegreesValue int rotation, boolean flipVertical, boolean flipHorizontal)

5. 使用美颜时传递的纹理是 oes 纹理,如何解决?

可以使用 demo 中工具类TextureConverter.java 的oes2Rgba 方法对纹理进行转换,转换为 RGBA 纹理,然后再传递给美颜 SDK。
/**
* 此方法用于将oes纹理转换为rgba纹理
*
* @param srcID oes 纹理
* @param width 纹理宽度
* @param height 纹理高度
* @return rgba纹理ID
*/
public int oes2Rgba(int srcID, int width, int height)

6. 如果想使用别的版本的 pag 如何解决?V3.5.0及以上支持

客户集成美颜 SDK 时:
如果是通过 Maven 集成,通过 implementation TencentEffect 就能引入 pag。如果您不想用 TencentEffect 依赖的 pag,可以通过 exclude 排除,然后在自己 app 的 build.gradle 中引入您需要的 pag 版本:
implementation ('com.tencent.mediacloud:TencentEffect_S1-04:版本号'){
exclude group: "com.tencent.tav", module: "libpag"
}
如果是下载美颜 SDK 的 aar 手动集成,在项目中依赖 TencentEffect.aar,这个 aar 是不带 pag 的,您还需要在 app 的 build.gradle 加一句 implementation pag 引入 pag 才能用:
implementation 'com.tencent.tav:libpag:4.3.33-noffavc'
如果您想动态下载 pag 的 so,请从 pag 官网 找到您需要的版本,下载 aar,将 .aar 重命名为 .zip,解压,剔除其中的 so,再把剩余文件压缩为 .zip,然后重命名为 .aar,最后引入这个不包含 so 的 pag aar,pag 的 so 则联网动态下载。

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈