按照官方介绍: AGC崩溃服务提供了轻量级崩溃分析服务,依据Crash SDK,可以实现零代码快速集成,你的应用能够在崩溃时自动收集崩溃报告,帮助你了解应用版本质量、对崩溃性问题进行快速跟踪定位、评估崩溃问题的影响范围等。
说白了就是华为提供一个SDK,你只要集成就可以看到应用的崩溃信息,不需要任何代码。是不是很心动,话不多说,先试试。
创建项目和应用
首先需要先在AGC创建一个项目,在项目中添加一个应用,操作很简单,这里可以参见官方文档创建应用。
开通华为分析服务
由于崩溃服务上报崩溃事件时使用了华为分析服务的能力,集成Crash SDK前需要开通华为分析服务,参见官方文档开通华为分析。
集成SDK
针对Android Studio开发环境,开发前需集成Crash SDK到刚刚创建的的Android Studio项目中。
-
登录AppGallery Connect网站,点击“我的项目”。
-
在项目列表中找到你的项目,在项目下的应用列表中选择你刚刚创建的需要集成的应用。
-
点击“项目设置”中“应用”栏下的“agconnect-services.json”下载配置文件。
-
将“agconnect-services.json”文件拷贝到应用级根目录下。
-
打开Android Studio项目级build.gradle文件,配置插件和仓库地址。
buildscript {
repositories {
google()
jcenter()
maven { url 'https://developer.huawei.com/repo/' }
}
dependencies {
classpath 'com.android.tools.build:gradle:3.5.3'
classpath 'com.huawei.agconnect:agcp:1.4.1.300'
}
}
allprojects {
repositories {
google()
jcenter()
maven { url 'https://developer.huawei.com/repo/' }
}
}
- 打开Android Studio应用级build.gradle文件,配置集成最新版本的Analytics SDK和Crash SDK。
dependencies {
implementation 'com.huawei.hms:hianalytics:5.0.4.200'
implementation 'com.huawei.agconnect:agconnect-crash:1.4.1.300'
}
- 点击界面上的“Sync Now”链接同步已完成的配置。
崩溃测试
为了测试崩溃,这里我在demo中添加了一个按钮“CrashTest”,点击调用AGC自带的方法产生崩溃,然后看看效果。
按键设计代码如下:
<Button
android:id="@+id/btn0"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize= "22dp"
android:textAllCaps="false"
android:text="CrashTest" />
点击事件代码如下:
Button btn_crash0 = findViewById(R.id.btn0);
btn_crash0.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
AGConnectCrash.getInstance().testIt(MainActivity.this);
}
});
打包安装应用到手机上,点击“CrashTest”产生一次崩溃。
崩溃报告查看
你可以在AGC上查看刚刚手动制造的崩溃的详细信息。
-
登录AppGallery Connect网站,点击“我的项目”图标,进入应用。
-
点击“质量 > 崩溃”进入崩溃页面,在页面中,点击“统计”页签,默认显示“过去24小时”,就可以看到崩溃信息已经上报了,需要注意的是这里需要等待1-2分钟才能看到。
-
点击“问题”页签,查看崩溃问题,显示“java.lang.NullPointerException”,手动制造的确实是空指针崩溃。
继续点击崩溃问题查看详情,可以看到发生崩溃问题的详细原因,以帮助你对崩溃问题进行分析,如下显示的就是点击“CrashTest”出现崩溃了。
总结:
1、 集成崩溃服务非常简单,测试时可以自己写代码,也可以使用AGC自带的testIt方法。
2、 崩溃报告显示非常快,一般1-2分钟就可以展示。
3、 除了调测的时候需要写几行代码测试,应用正式上线只要集成SDK就可以,真正零代码。
4、 崩溃服务还提供了NDK崩溃监控,混淆的崩溃报告还原,自定义报告等,功能十分强大。
欲了解更多详情,请参见:
华为AGC崩溃服务开发文档:https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-crash-introduction
华为AGC崩溃服务codelab文档:https://developer.huawei.com/consumer/cn/codelab/CrashService/index.html#0
原文链接:https://developer.huawei.com/consumer/cn/forum/topic/0201387764119030047?fid=0101271690375130218
作者:鼓楼赵又廷