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