问题现象
最近集成华为提供的HMS SDK能力时,无法登录,调用华为提供的getCurrentPlayer接口总是报错6004。日志搜索hmssdk,报错如下:
Line 291: I/HMSSDK_HmsClient: receive msg status_code:0, error_code6004, api_name:game.getCurrentPlayer
显示该错误码表示:权限不存在,未在华为开发者联盟上申请。
解决方案
既然报错原因是没有在开发者联盟上申请相关权限,因此我先参考[服务和API开通文档]检查了下当前开启的API权限情况,截图如下:
应用中涉及的服务,我的项目都已经开启了。所以这里我的权限已经启动。这里百思不得其解,最后联系了华为技术支持定位。他们给的方案如下:
-
如果没有启动,需要先开启,等待约15分钟后,测试手机上将HMS Core缓存清理后,客户端测试看是否OK。
-
如果已经启动,这个有可能(极小概率出现)是因为当时API开启时,出现了某种异常,导致华为后台系统没有收到这个API开启的同步消息,可以界面手动关闭下这个API开关,再重新打开,触发消息再次同步。同样需要将HMS Core缓存清理后,等待15分钟后测试。
清理HMS Core缓存方法为:手机设置>应用>应用管理>HMS Core>存储>清空缓存。
最后,果然通过关闭后重新开启的方式,我的游戏可以正常登录了。
作者:鼓楼赵又廷
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦