文档管理中心
|

HMS Core

华为游戏登录多次重复提醒更新HMS Core

问题现象:

游戏启动过程中多次重复弹出如下提示框提醒更新或安装HMS Core最新版本

问题复现

联系华为技术支持沟通,建议我们先复现该问题,并提供异常日志。

复现方法:

  • root的华为手机,在设置》应用》应用管理中搜索HMS Core这个APK,点击进去后,右上角有个按钮,选择“卸载更新”,如果卸载更新后无法复现,参考下面两个方法。

  • 非华为手机,直接将HMS Core或华为移动服务这个APK卸载后测试

  • Root的华为手机,卸载HMS Core后测试

我这里找了个非华为手机卸载HMS Core后,使用adb命令抓取了全量日志。

问题分析

据华为技术支持答复,华为HMS SDK提供的各个业务接口,比如初始化、登录、支付等接口都需要手机上安装HMS Core,如果调用某个接口发现手机上没有安装或安装的HMS Core版本不满足业务需求,会自动弹出安装或升级框,提示玩家安装或升级。

因此建议分析下启动时我们调用的接口,看看调用了哪些接口提示要安装或升级。

搜索日志关键词HMSSDK

以下日志,表示调用游戏初始化init接口时检查测试手机上的HMS Core APK后,发现没有安装

Initializing JosAppsClient
I/HMSSDK_HuaweiApiManager: sendRequest
I/HMSSDK_BaseHmsClient: ====== HMSSDK version: 40000300 ======
I/HMSSDK_BaseHmsClient: Enter connect, Connection Status: 1
I/HMSSDK_BaseHmsClient: connect minVersion:30000000
E/HMSSDK_HMSPackageManager: skip package com.huawei.hwid for metadata is null
E/HMSSDK_HMSPackageManager: Failed to find HMS apk

 

以下日志,表示调用登录接口时检测手机上的HMS Core APK后,也发现没有安装:

I/HMSSDK_[HUAWEIIDSDK]HwIdSignInClientHub: onCreate
I/HMSSDK_HmsAPKVersionCheckUtil: ====== HMSSDK version: 40000300 ======
I/HMSSDK_HmsAPKVersionCheckUtil: check minVersion:30000000
E/HMSSDK_HMSPackageManager: skip package com.huawei.hwid for metadata is null
E/HMSSDK_HMSPackageManager: Failed to find HMS apk
I/HMSSDK_AvailableAdapter: main thread invokes resolution.
I/HMSSDK_AvailableAdapter: startResolution


日志表明:游戏初始化init和登录接口都检测到没有安装HMS Core APK,因此会弹出两次弹框。

问题解决

华为技术支持给出如下两种方式:

1.         HMS Game Service SDK5.0.1.301及其以后版本,华为优化了init和登录接口同时调用会都弹框的机制,改为即使同时调用,也只弹一次框,因此可以升级SDK版本解决该问题,参考最新版本文档地址

2.         如果不愿意升级,可以把游戏登录和初始化init接口调用顺序替换下,先调用登录接口,在登录成功的回调中再调用初始化init接口。

分析了我们的项目代码,我们是先调用了init接口,但是因为华为init接口没有回调监听,导致无法保证init调用成功后再调用登录接口,登录接口和init在没有安装HMS Core情况下,会同时弹出多个安装升级提示框。

最后,我们选择更新HMS Game Service SDK版本后(原先使用的版本号是4.0.0.300),问题得到解决。



点赞
收藏
回复
分享
举报
浏览5629 编辑于2021-02-08 07:33未知归属地
全部评论
最多点赞
最新发布
最早发布
写回答
新增插入模板功能
一键使用模板,快速填写内容,轻松发帖~
知道了
  • 为了保障您的信息安全,请勿上传您的敏感个人信息(如您的密码等信息)和您的敏感资产信息(如关键源代码、签名私钥、调试安装包、业务日志等信息),且您需自行承担由此产生的信息泄露等安全风险。
  • 如您发布的内容为转载内容,请注明内容来源。

我要发帖子

了解社区公约,与您携手共创和谐专业的开发者社区。