每次吃一點(diǎn)Androidの性能優(yōu)化

目錄:
1、Android性能優(yōu)化分析入口
2、系統(tǒng)性能調(diào)優(yōu)工具
3、編碼方式優(yōu)化建議

Android小仙

1. 性能分析入口點(diǎn):

  • 了解編程語(yǔ)言的編譯原理,使用高效的編碼方式。
  • 采用合理的數(shù)據(jù)結(jié)構(gòu)和算法
  • 對(duì)界面布局進(jìn)行優(yōu)化
  • 采用多線程、數(shù)據(jù)緩存、延遲或提前加載等方式。
  • 合理配置虛擬機(jī)的堆內(nèi)存使用上限和使用率
  • 合理使用native代碼
  • 合理配置數(shù)據(jù)庫(kù)緩存類型和優(yōu)化SQL語(yǔ)句
  • 使用工具分析,查找性能瓶頸

2. 安卓系統(tǒng)性能調(diào)優(yōu)工具

官方的工具:

  • Debug GPU Overdraw:系統(tǒng)自帶功能UI渲染檢測(cè)功能
  • Profile GPU Rendering:系統(tǒng)自帶功能UI渲染檢測(cè)功能
  • Hierarchy Viewer:檢測(cè)UI渲染
  • Memory Monitor、Heap Viewer、Allocation Tracker:內(nèi)存檢測(cè)分析工具
  • Memory Analyzer Tool (MAT):詳盡的內(nèi)存分析器
  • Traceview、Systrace:CPU使用分析工具
  • Battery Historian:耗電分析工具

第三方工具:

  • WakeLock Detector手機(jī)運(yùn)行狀態(tài)探測(cè)
  • GSam Battery Monitor :電池耗電去向
  • Trepn Profiler: 分析手機(jī)CPU的消耗
  • Root Explorer:文件瀏覽器
  • 避免創(chuàng)建不必要的對(duì)象
  • 合理使用static成員
  • 避免內(nèi)部調(diào)用Getters/Setters
  • 優(yōu)先使用增強(qiáng)for循環(huán)
  • package代替private,便于私有內(nèi)部類訪問(wèn)外部類成員
  • 整型可以解決的問(wèn)題不要用浮點(diǎn)型
  • 采用<merge>優(yōu)化布局層數(shù),使用<include>共享布局
  • 延時(shí)加載View,采用ViewStub避免不常用視圖長(zhǎng)期被引用
  • 移除Activity默認(rèn)背景可以提升加載速度
  • 不要頻繁開關(guān)Cursor,不使用時(shí)務(wù)必關(guān)閉Cursor
  • 動(dòng)態(tài)注冊(cè)廣播的情況下,要記得取消注冊(cè)
  • ListView優(yōu)化
  • 注意線程同步
  • 合理使用StringBuffer,StringBuilder,String,通常用StringBuilder
  • 盡量使用局部變量
  • I/O操作要及時(shí)關(guān)閉
  • IntentService代替Service
  • ApplicationContext代替Activity Context
  • 集合對(duì)象及時(shí)清理
  • Bitmap要及時(shí)回收
  • 使用軟引用
  • 應(yīng)用圖標(biāo)放mipmap,其他資源放drawable下
  • 使用庫(kù)函數(shù)
  • 及時(shí)銷毀WebView

未完待續(xù)------

參考資料:
Android性能分析工具整理匯總
Android系統(tǒng)性能調(diào)優(yōu)工具介紹
Android開發(fā)性能優(yōu)化總結(jié)(一)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,139評(píng)論 25 708
  • 注意事項(xiàng): 布局優(yōu)化;盡量使用include、merge、ViewStub標(biāo)簽,盡量不存在冗余嵌套及過(guò)于復(fù)雜布局(...
    HarryXR閱讀 5,357評(píng)論 1 19
  • 一、關(guān)于App性能優(yōu)化 1. 性能優(yōu)化分類 Google官方給出的性能優(yōu)化教程,主要分為以下幾類:1)布局與UI渲...
    cszhangchao閱讀 2,000評(píng)論 0 6
  • 琳瑯April閱讀 370評(píng)論 0 1
  • 寫在前面:文字是一個(gè)人內(nèi)心的寫照,無(wú)論生活賦予我們?cè)鯓拥捏w驗(yàn),能留下一篇原汁原味的創(chuàng)作,就是一種收獲。癡愛(ài)文字的我...
    最美四月天閱讀 2,266評(píng)論 2 1

友情鏈接更多精彩內(nèi)容