分享一個開發中捕獲崩潰的庫

伯兮發表於2019-03-20

本文已同步發表到我的技術微信公眾號,掃一掃文章底部的二維碼或在微信搜尋 “程式設計師驛站”即可關注,不定期更新優質技術文章。同時,也歡迎加入QQ技術群(群號:650306310)一起交流學習!

在開發中,我們難以避免崩潰的問題出現,尤其在提測後,測試小夥伴經常會跑過來說,我剛剛xx操作後應用閃退了,然後開發小夥伴會說麻煩你幫復現一下,結果測試呢弄了大半天也沒復現出來(問題非必現!!!),然後問題定位起來異常的艱難!如果有遇到過以上尷尬場景的小夥伴,不妨嘗試用一下下面要介紹的這個庫,我們先來看一下效果:

crashHandlerLibTest.gif

上面的庫提供了捕獲奔潰資訊並在單獨頁面進行展示,同時可以將奔潰資訊分享到微信、QQ等第三方,也單獨提供了將儲存在本地的奔潰資訊檔案分享到第三方的API,下面我們簡單看一下怎麼將這個庫整合到專案中來!

##CrashHandlerLib的使用

開源Github地址

介紹:一個基於UncaughtExceptionHandler實現的Android奔潰日誌捕獲依賴庫,使用該庫可以顯性的將奔潰日誌展示出來,有助於開發以及測試人員在工作中及時定位奔潰問題.同時支援將奔潰日誌分享到微信、QQ等第三方。

使用手冊

step 1.在根目錄 build.gradle 上新增配置

allprojects {
	repositories {
		...
		maven { url 'https://jitpack.io' }
	}
}
複製程式碼

step 2.在當前module的build.gradle新增如下依賴

dependencies {
	implementation 'com.github.tuikes:CrashHandler:v2.1'
}
複製程式碼

step 3.在Application中完成初始化

@Override
public void onCreate() {
    super.onCreate();
    CrashManager.getInstance().init(this, BuildConfig.DEBUG);
}
複製程式碼

step 4.新增測試程式碼

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    test = findViewById(R.id.test);

   test.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Log.d("cdx", test2.getText().toString());
        }
    });

findViewById(R.id.share_crash_file).setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            //將奔潰資訊分享到第三方
            CrashManager.getInstance().shareCrashFile(MainActivity.this);
        }
    });
}
複製程式碼

編譯執行之後,點選“測試”按鈕,效果如下:

crashHandlerLibTest.gif

備註:我們可以在應用的任何地方新增如下程式碼,可以實現將本地儲存的奔潰資訊分享到第三方應用。

CrashManager.getInstance().shareCrashFile(MainActivity.this);
複製程式碼

關注我的技術公眾號"程式設計師驛站",不更新技術文章,微信掃一掃下方二維碼即可關注:

分享一個開發中捕獲崩潰的庫

相關文章