华为Y6p集成HMS广告加载报错error code 0(Internal Error)求助
解决方案
- 版本适配修复
你使用的com.huawei.hms:ads-lite:13.4.45.308要求设备HMS Core最低版本为5.2.0,当前测试设备HMS Core 5.0.0.329版本过低,两种修复方案二选一:
- 将测试设备的HMS Core升级到最新正式版
- 降级广告SDK到适配HMS Core 5.0的版本,例如
com.huawei.hms:ads-lite:13.4.39.302
- AGConnect配置修复
- 检查AppGallery后台下载的
agconnect-services.json文件是否放置在app模块根目录,缺失该文件会直接导致AGC服务初始化失败,对应日志中的ServiceDiscovery异常 - 你当前AGCP插件版本为1.6.0.300,与依赖的
agconnect-core:1.5.2.300版本不匹配,将agconnect-core版本升级到1.6.0.300即可
- 运行环境修复
- 检查测试设备系统设置中的「广告与隐私」选项,关闭「限制广告跟踪」开关,开启该开关会导致广告请求被拦截
- 进入应用管理找到HMS Core,清空存储缓存后重启设备重试
- Manifest配置修复
日志中的CoreComponentFactory找不到是Gradle7.0与AndroidX的兼容问题,在AndroidManifest.xml的application节点添加如下配置即可:
<manifest ... xmlns:tools="http://schemas.android.com/tools"> <application ... android:appComponentFactory="androidx.core.app.CoreComponentFactory" tools:replace="android:appComponentFactory"> <!-- 原有配置 --> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> </application> </manifest>
- 可选调试步骤
在初始化广告前添加HMS Core可用性检测,确认设备环境正常:
val errorCode = HuaweiApiAvailability.getInstance().isHuaweiMobileServicesAvailable(this) if (errorCode != ConnectionResult.SUCCESS) { // 处理HMS Core不可用情况,引导用户升级修复 }
内容的提问来源于stack exchange,提问作者Waheed Shah
相关产品推荐
相关产品推荐

