在使用手機應(yīng)用的時候,經(jīng)常會有應(yīng)用打開慢、界面卡頓無反應(yīng)、應(yīng)用閃退、網(wǎng)絡(luò)加載失敗等問題,這些應(yīng)用性能問題,都是影響用戶體驗的罪魁禍首。
隨著手機應(yīng)用性能的重要性逐步提升,越來越多監(jiān)控應(yīng)用性能的產(chǎn)品也應(yīng)運而生。華為AppGallery Connect(以下簡稱AGC)提供了應(yīng)用開發(fā),測試,發(fā)布以及分析的全流程的質(zhì)量服務(wù)。
1. 華為AGC性能管理服務(wù)
性能管理(App Performance Management,以下簡稱APM)服務(wù)是AGC質(zhì)量系列服務(wù)中的其中一項,提供全免費的,分鐘級應(yīng)用性能監(jiān)控能力。主要有以下功能:
自動采集應(yīng)用啟動,屏幕性能數(shù)據(jù),網(wǎng)絡(luò)請求數(shù)據(jù),前臺和后臺活動數(shù)據(jù)。
實時監(jiān)控:性能數(shù)據(jù)上報15分鐘內(nèi)生成可視化報告。
提供應(yīng)用性能數(shù)據(jù)分析報表,精準發(fā)現(xiàn)性能改進點。
支持自定義跟蹤記錄,監(jiān)控應(yīng)用在特定場景下的性能數(shù)據(jù)。
對比與其他第三方監(jiān)控平臺,性能管理服務(wù)有以下特點:
極簡集成:無需編寫代碼,即可輕松集成,分析通用性能指標。
實時監(jiān)控:性能數(shù)據(jù)上報15分鐘內(nèi)生成可視化報告。
應(yīng)用性能全覆蓋:應(yīng)用啟動、ANR分析、頁面渲染、網(wǎng)絡(luò)請求自動化跟蹤,同時支持自定義跟蹤記錄,自定義指標和維度。
2. 集成AGC性能管理
從華為的官方資料可知,AGC性能管理的集成步驟非常簡單,只需要在代碼中將插件和SDK添加到對應(yīng)的位置即可,屬于零代碼集成??珊唵螝w納為以下幾個步驟:
創(chuàng)建應(yīng)用并開通性能管理服務(wù);
下載和集成json文件;
配置APM插件APM SDK;
配置混淆文件。
完成這四步,即可打包運行該應(yīng)用,稍后即可在AGC性能管理界面查看所采集到的性能數(shù)據(jù)。
2.1 創(chuàng)建應(yīng)用并開通性能管理服務(wù)
在AGC控制臺,創(chuàng)建應(yīng)用,并且開通性能管理服務(wù),創(chuàng)建應(yīng)用的時,注意應(yīng)用的包名要和APK里的包名保持一致。如果是在已有的應(yīng)用里集成性能管理,注意包名需要和AGC控制臺創(chuàng)建應(yīng)用時配置的包名保持一致 。
創(chuàng)建好應(yīng)用后(或者使用已有的應(yīng)用),在界面上找到 我的項目 -> 質(zhì)量 –>性能管理,點擊立即開通 ,即可開通AGC性能管理服務(wù)。
2.2 下載和集成json文件
在Android Studio中新建一個Android工程。包名需要和AGC界面上的包名保持一致。
然后回到AGC首頁,在 我的項目 -> 項目設(shè)置 –>應(yīng)用 界面下,找到并且將agconnect-services.json文件下載到本地,然后把這個文件,放到Android工程的app層級目錄下。
2.3 集成APM插件與APM SDK
配置SDK地址,打開Android工程,在項目級build.gradle文件中,配置下面的內(nèi)容
buildscript {
repositories {
//配置如下地址
maven {url 'https://developer.huawei.com/repo/'}
}
dependencies {
//配置如下地址
classpath 'com.huawei.agconnect:agcp:1.4.1.300'
classpath 'com.huawei.agconnect:agconnect-apms-plugin:1.3.1.300'
}
}
allprojects {
repositories {
//配置如下地址
maven {url 'https://developer.huawei.com/repo/'}
}
}
復(fù)制代碼
打開應(yīng)用級的build.gradle文件,配置好APM的SDK,配置下面的內(nèi)容即可
//配置如下地址
apply plugin: 'com.huawei.agconnect'
apply plugin: 'com.huawei.agconnect.apms'
dependencies {
//配置如下地址
implementation 'com.huawei.agconnect:agconnect-apms:1.3.1.300'
}
復(fù)制代碼
2.4 配置混淆文件
找到應(yīng)用級的proguard-rules.pro文件(混淆配置文件),添加以下排除項。
-keep class com.huawei.agconnect.**{*;}
-dontwarn com.huawei.agconnect.**
-keep class com.hianalytics.android.**{*;}
-keep class com.huawei.updatesdk.**{*;}
-keep class com.huawei.hms.**{*;}
-keep interface com.huawei.hms.analytics.type.HAEventType{*;}
-keep interface com.huawei.hms.analytics.type.HAParamType{*;}
-keepattributes Exceptions, Signature, InnerClasses, LineNumberTable
復(fù)制代碼
涉及到文件和對應(yīng)的步驟,可以參考下面的截圖
2.5 集成完成,打包測試
集成完成后,點擊Android Studio工程右上角的Sync,打包應(yīng)用放到Android設(shè)備上運行,然后就可以在AGC界面上查看性能管理服務(wù)所采集到的數(shù)據(jù)與報告。
為了獲得更多的數(shù)據(jù),可找多臺設(shè)備安裝并運行該應(yīng)用。
3. 查看性能數(shù)據(jù)和ANR數(shù)據(jù)
充分在設(shè)備上運行該應(yīng)用以后,回到AGC界面,在 我的項目 -> 質(zhì)量 –> 性能管理 界面下,可以查看該應(yīng)用測試運行時的各項性能數(shù)據(jù)。
信息非常全面,應(yīng)用分析,ANR分析,網(wǎng)絡(luò)分析 三方面的數(shù)據(jù)都有。下面是我的個人應(yīng)用使用性能管理以后的實際分析報告,供大家參考:
3.1 概覽數(shù)據(jù):

3.2 應(yīng)用分析數(shù)據(jù):

3.3 ANR分析數(shù)據(jù):

3.4 網(wǎng)絡(luò)分析數(shù)據(jù):

4.總結(jié)
未涉及業(yè)務(wù)代碼的編寫,僅通過簡單的4項步驟,就順利完成了華為AGC性能管理服務(wù)SDK的集成。實現(xiàn)了非常全面的應(yīng)用性能數(shù)據(jù)的監(jiān)控,可以說非常便捷實用。
AGC性能管理的分析報告,提供了性能問題出現(xiàn)瞬間的詳細的設(shè)備與日志信息、性能數(shù)據(jù),實時的監(jiān)測報告為產(chǎn)品和運營提供了優(yōu)化方向,同時也解決了性能問題開發(fā)難定位,測試難復(fù)現(xiàn)的問題,大幅減少了開發(fā)測試工作量。
作者:華為開發(fā)者論壇
鏈接:https://juejin.im/post/6883368578997813255