天天看點

Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議

一、前言

之前一直是用騰訊的bugly

目前受邀推薦使用

友盟+U-APM

,那就讓我們來嘗試體驗一下

二、快速內建

2.1 賬号注冊

友盟+注冊

注冊很快,沒有繁瑣的步驟和多餘的資訊填寫,點贊

Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議

2.2 建立應用

應用性能監控平台U-APM
Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議
Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議
Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議

2.3 Demo下載下傳

為了快速體驗,我們跳過SDK內建這一步,直接用官方提供的Demo。

SDK內建也很友善,直接看官方文檔即可:

Android SDK內建流程

Demo下載下傳:

MultiFunctionAndroidDemo:友盟多功能Android Demo
Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議

2.4 Demo導入

導入工程File->New->Import Porject

期間有遇到一個問題,如果大家也同樣遇到這個問題可以參考博文:

Android Studio Failed to open zip file的解決辦法
Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議

2.5 Demo試跑

修改preInit(Context context,String appkey,String channel)後,即可運作Demo

// SDK預初始化函數

// preInit預初始化函數耗時極少,不會影響App首次冷啟動使用者體驗

public static void preInit(Context context,String appkey,String channel)

preInit()在App.java裡面調用,傳入自己的appkey即可。

appkey在如下圖中複制。

Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議
Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議

Demo跑起來後,再去背景看看,就會發現應用的狀态變成:已內建

Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議

三、極緻體驗

3.1 第一個App崩潰

·  有點意外, 第一個崩潰資訊出來的有點快。

·  首頁->點選統計UApp->點選程式崩潰

3.2 檢視背景崩潰資訊(延時1分鐘+)

·  這時候就要趕緊看下背景,有沒有錯誤資訊上報

·  一直重新整理背景,同時對比實時時間,大概延時1分10秒左右,背景才顯示出錯誤資訊。與騰訊bugly對比略微好點,半斤八兩吧

·  不過,錯誤資訊倒是給的詳細,直接找到com.umeng.soexample.analytics.UappActivity的第94行

·  認真一看,很明顯的錯誤,"123"的字元串長度隻有3,無法索引到10

findViewById(R.id.analytics_g3_b1).setOnClickListener(new View.OnClickListener() {

         @Override

        public void onClick(View view) {

                Toast.makeText(mContext, "已完成程式崩潰", Toast.LENGTH_SHORT).show();

                "123".substring(10);

         }

});

Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議
Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議

3.3 錯誤處理

·  把未修複改成已修複

·  首先,故意不修複代碼,再制造一次程式崩潰

·  處理狀态不變,還是已修複

·  其次,修改App版本versionCode改成2,versionName改成1.0.1,其他不變,再制造一次程式崩潰

·  處理狀态依舊不變,還是已修複。

·  不過版本範圍變了1.0 ~ 1.0.1。這就有點參差了,對此我就有點意見了,詳情見後文第四章節。

Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議
Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議

3.4 告警設定

·   通過錯誤清單的告警入口進來

·   建立告警計劃

·  告警名稱

·   觸發條件:>3次

·   生效應用版本:全部

·   觸達方式:郵箱、企業微信

Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議
Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議

3.5 企業微信機器人

·  添加一個群聊

·  添加群機器人

·  得到該機器人的Webhook

Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議
Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議
Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議
Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議

3.6 告警觸發

·  告警設定成功後,就開始觸發告警

·  點了好幾次都沒反應,奇奇怪怪

·  沒關系,有點耐心,等~

終于被我等到了~

Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議

·  很明顯看出來,告警觸發是每小時一次的

·  基本都在每小時的07分左右推送

Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議
Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議
Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議
Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議

四、一點小建議

4.1 錯誤明細中缺乏App版本

·  App版本号在錯誤清單中有展現,挺好的

·  但是在錯誤明細中沒有展現,相反還多出一個SDK版本号,容易混淆

Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議
Android友盟U-APM快速內建與極緻體驗一、前言二、快速內建三、極緻體驗四、一點小建議

4.2 錯誤處理的邏輯流程

錯誤處理的邏輯流程可以優化成如下:

·  在崩潰分析->錯誤清單->處理狀态在勾選已修複的時候,選擇在XX.XX.XX版本修複

·  後續如果版本大于 XX.XX.XX版本時,還有同樣的錯誤上報,則把處理狀态自動修改成修複失敗

·  增加一個處理流程記錄,詳細記錄這個bug在XX時間被XX人在XX版本修複,然後在XX版本又複發……

按照這個邏輯修改後,處理狀态是動态的,增加了更多的資訊。

比起目前,一旦手動修改了處理狀态後,其狀态一直不變,是不是強多了~

作者:康玮劍

1、多年嵌入式軟體開發經驗;

2、同樣擅長Android開發和微信小程式開發;

3、做過大廠的系統工程師,當過小廠的嵌入式主管,現在是個創業公司的軟體經理; 4、對IoT物聯網開發有自己的見解,業餘時間喜歡沉澱、整理與分享輸出自身的技術知識。

繼續閱讀