Android | 零程式碼快速整合AGC崩潰服務
按照官方介紹: 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
作者:鼓樓趙又廷