一、Hugo插件 —— 打印方法運行時間
首先申明下,此Hugo非 彼Hugo(Hugo是由Go語言實現的靜態網站生成器)。
Hugo插件作用 :
-
能夠計算並打印一個方法的輸入參數和函數的運行時間
-
Hugo插件應用場景:
-
處理Android 應用卡頓問題
(1)先看實例
1)在對應方法處標注@DebugLog
SearchResultPanel::dispatchResult處標記@DebugLog
2)Hugo插件計算的運行時間
Hugo插件計算的運行時間
第一行:打印執行方法及其參數
第二行:方法執行時間
3)常規日志打印運行時間
常規日志打印運行時間
(2)Hugo 插件配置
1)在buildscript 的dependencies中添加依賴地址
classpath 'com.jakewharton.hugo:hugo-plugin:1.2.1'
2)apply插件
applyplugin:'com.jakewharton.hugo'
3)使用開關配置
方式一 :
hugo { enabled false }
方式二 :
Hugo.setEnabled(true|false)
備注 :How to use Hugo.setEnabled(true)? (暫時好像還不行)
Hugo插件詳細資料可參考 : Hugo插件 Github 地址
二、Godeyes 插件 —— Crash隱患掃描工具
Godeyes是一款專門針對無線APP代碼Crash隱患的靜態掃描工具,能夠對Android 和 iOS 兩個平台代碼進行檢查,同時支持Mac 、Windows、Linux三種操作系統。
掃描規則源自項目crash案例代碼分析,掃描准確率高達90%以上,針對Android 應用,Godeys已經提供了Android Studio 插件版本。
(1)Godeyes 插件配置
1)Godeyes配置項
配置輸出報告格式類型、編碼格式、輸出路徑 (可配置到RDM輸出)
Godeyes配置項
2)掃描規則配置
掃描規則配置
3)白名單配置
詳情可參照 :Godeyes 使用說明
(2)其他靜態掃描工具
Android 代碼規范神器 CheckStyle使用全面解析
三、Activity Tracker —— 顯示棧頂Activity信息
(1)背景介紹
在日常需求開發中,經常碰到不太熟悉的模塊,如何快速定位相應頁面?一般有以下幾張方式:
1)根據項目中的模塊划分及命名,在項目目錄中搜尋;
2)使用UI Automator Viewer 工具定位所在模塊頁面某個控件
UI Automator Viewer 工具定位
缺點:項目中不是所有控件在xml中都寫上了android:id ,特別是組里現在使用databinding后。
3)使用 adb 工具
查看當前Activity :adb shell "dumpsys window w | grep name="
其他相關操作:
查看當前棧頂的Activity :adb shell dumpsys activity | grep "mFocusedActivity"
查看當前棧頂的Activity的Fragment :adb shell dumpsys activity your.package.name
(2)Activity Tracer App
在這里介紹一種更為簡便的工具查看棧頂Activity,Activity Tracer ,是一個查看棧頂Activity的簡易App工具。
使用效果如下 :
專輯詳情頁
相關地址:
四、開發助手 —— 方便切換開發者配置
開發助手 —— Trinea 大神佳作,在此不過多介紹,詳情請看:Android 應用開發調試利器——開發助手,數十倍效率提升
開發助手主界面
本文轉載自騰訊雲,已獲得作者授權。