使用HMS Toolkit转换GMS到HMS后上架AppGallery相关问题咨询
问题1:原有谷歌Play版本功能在HMS环境的兼容性
- 功能能否正常运行取决于你要覆盖的设备类型:装有GMS服务的华为设备可以正常运行所有原GMS依赖功能,包括Start IO广告;2020年之后发布的仅支持HMS的华为设备没有GMS运行环境,依赖GMS的功能会加载失败无法使用。
- 若要覆盖全量华为用户,建议将依赖GMS的三方SDK替换为同时支持GMS+HMS的适配版本,或者新增服务存在性判断逻辑,检测到GMS不存在时自动切换到HMS适配方案,目前Start IO官方已经推出了HMS适配版本,可直接集成避免兼容问题。
问题2:One Signal推送相关配置文件处理
- 不需要直接删除
google-services.json,如果你的应用需要同时上架谷歌Play和华为AppGallery,建议做多渠道打包配置,不同渠道自动加载对应配置文件即可。 - 若你使用的One Signal版本已经适配华为推送,只需将华为AppGallery后台下载的
agconnect-services.json放到项目对应目录,同时在One Signal后台配置华为推送的相关参数,就能实现HMS设备自动走华为推送通道,GMS设备继续沿用Firebase推送通道。 - 若你仅计划上架华为AppGallery,不需要兼容GMS设备,可以直接删除
google-services.json,仅保留agconnect-services.json即可。
问题3:项目同步报错解决
该报错是AGP插件与HMS Core agcp插件版本不匹配导致的冲突,可按以下步骤排查修复:
- 检查项目根目录
build.gradle中com.android.tools.build:gradle版本与com.huawei.agconnect:agcp版本的匹配关系:AGP 7.0及以上版本需要对应agcp1.6.0及以上版本,AGP 4.x版本对应agcp1.4.x-1.5.x版本即可。 - 检查项目内所有HMS Core相关SDK版本是否统一,避免不同SDK依赖的基础组件版本不一致导致冲突。
- 若配置了多渠道打包,检查各渠道的配置项是否存在冲突,是否有重复声明的依赖项。
内容的提问来源于stack exchange,提问作者Clinton Canarias
相关产品推荐
相关产品推荐

