问题描述

手机断网情况下,耗电严重,最后定位发现玩家手机上安装的某款联运游戏一直在调用init接口。

图片

Init接口是华为Game Service SDK提供,华为联运游戏都需要调用,具体参考游戏启动。

问题分析

联系华为技术支持(可提单联系),技术支持看了下我们代码,发现我们代码逻辑有问题,按照华为官方文档分析,我们原来直接在下图圈出来的地方增加了:

If(isInit){ // 华为初始化失败,继续调用init
    huaweiInit();
}

图片

断网情况下,初始化失败,导致一直在重复调用init接口,耗电严重。

解决方案

最后我们将圈出来位置中的判断去掉,补充了7002错误码(网络异常)处理,网络错误时,会提示玩家自检网络,不会自动重复调用init接口。重新提审上架,问题解决。

备注

华为技术支持这边也反馈会优化下文档和demo,当前最新文档和demo优化如下:

图片


华为开发者论坛
352 声望56 粉丝

华为开发者论坛是一个为开发者提供信息传播、开发交流、技术分享的交流空间。开发者可以在此获取技术干货、华为源码开放、HMS最新活动等信息,欢迎大家来交流分享!