我们公司之前使用Android平台开发应用时集成过华为提供的崩溃服务,只需要引入SDK就可以,零代码集成还免费,应用崩溃信息实时采集上报,及时帮助修复Bug,真是太好用了。最近公司使用Cocos在开发另一款游戏,就想着如果也能用Cocos来集成,那就太好了。网上搜索了一下,嘿!还真有相关文档,根据文档和自己摸索,完全从一个小白的角度总结下如何集成,希望有需要的开发者能拿来即用。
1、 Cocos平台创建应用并开启服务
1.1 创建Cocos AppID Cocos AppID是游戏(应用)的唯一标识。在使用服务之前,必须先为游戏工程设定Cocos AppID,然后才能开始使用各种服务。
如果没有Cocos AppID,需要先前往 Cocos 账户中心创建一个。
如下:
进入 Cocos 账户中心后,点击创建游戏,填写相关信息后完成游戏的创建并获取Cocos AppID。
此时再次进入Cocos Creator控制台,点击“设定Cocos AppID”,可以看到刚刚创建的游戏已经同步过来了,选择游戏后完成关联。
1.1 Cocos Creator控制台开启华为分析和崩溃服务 关联游戏后,可以在Cocos Creator控制台开启华为分析和崩溃服务。
Cocos Creator控制台开始相关服务后,在 Cocos账户中心刷新页面发现相关服务也同步开通(颜色高亮):
1.1 AGC页面开启华为分析和崩溃服务 在 Cocos Creator控制台开启华为分析和崩溃后,还需要在AGC页面开启相应的服务,操作步骤如下:
a) 登录AGC,完成项目和应用的创建,此处不再讲述如何在AGC创建应用,可以直接参考华为的官方文档->(戳我创建应用)
b) 创建完项目和应用后就需要开发相关服务了。进入我的项目-> 质量->崩溃,点击“启动分析服务”后同步开启华为分析和崩溃服务:
c) 服务开通以后,回到项目设置界面,下载最新的json文件。
d) 将刚下载好json文件,放到Cocos工程目录的settings目录下。
同时也可以在工程架构中看到:
2、 构建并安装应用
2.1 发布到HUAWEI AppGallery Connect平台
a) 在Cocos菜单面板,点击 项目-> 构建发布 –> 选择 HUAWEI AppGallery Connect,配置对应的包名。此处的包名需要和在华为AGC创建的应用包名保持一致,否则会报编译错误。
b) 依次点击“构建”、“编译”,编译完成后可以直接打开发布路径查看生产的APK包,发布路径一般在 \build\jsb-link\publish\android下。获取APK包后您可以使用USB数据线通过adb命令将软件包安装到您的手机上进行调测。
c) 您还可以直接上传APK包到AGC页面,选择“上传”,首次上传需要登录AGC账号。填写应用的APPID,选择APK包的路径,点击“确认上传”即可。
2.1 发布到Android平台
a) 您还可以将发布平台选择Android,然后直接连接手机和电脑,点击“运行”直接将APK安装到手机:
b) 如果需要在Android Studio中打开项目,可以在Android Studio中打开Cocos工程,路径一般为: .\build\jsb-link\frameworks\runtime-src\proj.android-studio
3、 测试崩溃实现
通常应用程序崩溃出现的概率较小,您可以在测试应用时调用Crash SDK的自带的测试方法testIt手动制造一个崩溃,然后在AGC上查看崩溃上报情况,以测试崩溃服务是否正常运行。
本工程中通过设置一个按键“CrashTest”,点击后调用Crash SDK的测试方法可以制造一次崩溃。接口定义如下:
testIt(): void
示例:
huawei.agc.crash.CrashService.testIt();
4、 查看崩溃报告
4.1 查看崩溃报告统计信息 a) 安装好应用后,点击“CrashTest”按钮制造一次崩溃,应用退出后再次打开应用。
b) 登录AppGallery Connect网站,点击“我的项目”。
c) 在项目列表中找到您的项目,在项目下的应用列表中选择您的应用。
d) 点击“质量 > 崩溃”,进入崩溃服务页面,点击"统计"页签,时间段选择"过去一小时",查看您应用的崩溃统计信息,如下:
4.2 查看崩溃堆栈详情
点击崩溃问题,可以进入问题详情页面,在"堆栈"信息中,您可以大致了解发生崩溃问题的原因,以帮助您对崩溃问题进行分析。
4.3 获取可阅读的崩溃报告
a) 当ProGuard或DexGuard在编译时将代码中的类名、字段和方法等替换为不可阅读的代码,您可以通过混淆Mapping文件获取经过反混淆处理的崩溃报告。
b) 找到本次工程的mapping文件,获取混淆的mapping文件:
c) 点击上传,将对应的mapping文件上传到AGC:
d) 上传混淆的mapping文件后,再次查看原先的崩溃堆栈,发现已经还原:
总结
1、 用Cocos集成华为崩溃SDK很简单,只需创建应用,开启华为分析和崩溃服务
2、 建议首次接入的开发者可以先下载demo自己跑一跑
3、 不止华为崩溃服务,很多其他的华为服务也陆续开发支持Cocos了,感兴趣的朋友可以自己接入
欲了解更多详情,请参见:
1、 Cocos官方集成文档:https://docs.cocos.com/creator/manual/zh/cocos-service/agc-crash.html
2、 华为AGC 崩溃服务文档:https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-crash-introduction
3、 华为AGC-崩溃服务codelab:https://developer.huawei.com/consumer/cn/codelab/CrashService/index.html#0
原文链接:https://developer.huawei.com/consumer/cn/forum/topic/0201409049537500307?fid=0101271690375130218
原作者:Jessyyyyy
来源:oschina
链接:https://my.oschina.net/u/4478396/blog/4884382