Android應用開發優化

2021-07-06 07:10:09 字數 1295 閱讀 1873

最近總結了一些,android應用開發中,需要注意的一些事項,與大家分享

1.盡量少的宣告全域性變數

2.宣告全域性靜態變數,一定要加final宣告

3.宣告非靜態的全域性變數,最好不要初始化任何值,在使用到的地方,在進行初始化

4.函式中若干次使用全域性變數,應該將全域性變數賦值給本地變數,然後直接使用本地變數

5.能用int,不要使用浮點數 

6.能用乘法不用除法

7.盡量避免使用geter和setter方法

8.在activity的oncreate函式中,盡量做少的事。

9.在activity中宣告的靜態陣列或者靜態**塊,重構到單獨的乙個類裡。

10.布局檔案要盡可能的優化,減少布局的解析時間 。 儘量減少布局的巢狀層次

11.activity啟動後開始進行非同步執行緒的載入,最好delay一下。再開啟執行緒

12.對於存在於集合中的bean物件,盡可能少的宣告變數。能用int 就不要用long.宣告的string等複雜變數,最好不要進行初始化。

13.使用執行緒,一定要給它傳乙個名字,然後需要定義執行緒的優先順序

14.在使用集合的時候,優先選擇sparsearray。

15.盡量避免使用列舉

16.工具方法盡量寫成是靜態方法

17.執行緒間同步盡量使用開銷小的同步鎖

18.在使用集合類的時候,如果已知資料的規模,在初始化的時候,就設定好預設大小。

19.私有內部類訪問外部類的私有變數,要將變數修改為包繼承許可權

20.對於開銷大的演算法,且不止是執行一次的,要使用快取策略

21.避免在繪製或者解析布局的時候,分配物件。例如ondraw方法

22.不要給布局寫無用的引數,例如relativelayout,寫layout_weight屬性

23.儘量減少布局的巢狀層數。例如包含乙個imageview和textview的線性布局,可以用compounddrawable的textview來代替

24.盡量用android提供的sparsearray來代替hashmap

25.如果linearlayout用於巢狀的layout空間計算,它的android:baselinealigned設定為false,可以加速layout計算

26.用floatmath代替math

27.盡量避免巢狀的使用layout_weight,那樣會影響執行效率

28.如果為rootview設定了背景,那麼會先用theme指定的背景繪製一遍,然後才用指定的背景繪製,這叫做"overdraw",可以通過theme的background為null來避免

29.不要有無用的任何資源或者檔案

Android應用開發之CPU優化

最近開發乙個apk的時候遇到了乙個問題,cpu動不動就占用到40 以上,而且是乙個服務型的常駐記憶體apk,這樣子肯定不行的,cpu發熱可能會過高。這個apk需要優化,包括記憶體優化,結構優化,cpu優化等等 1.獲取apk記憶體占用情況 使用top命令,確定自己是不是占用了比較高的cpu top2...

Android應用優化

android應用優化主要從兩方面來考慮,其一是針對記憶體的優化,android裝置的記憶體相比較而言是比較珍貴,應及時 不再使用的記憶體,防止記憶體洩露 其二是針對性能的優化,防止使用者使用是出現卡頓,響應慢或anr。效能調優android官方有指導性的文件,以及相關的除錯工具,可參考androi...

Android應用優化之業務優化

作為程式開發者,我們應該也需要花費一些時間放在業務優化上。很多時候迫於時間的關係,當實現業務的方案並非最優。比如為了實現多張的上傳,很多人直接使用序列操作,儘管這樣比較容易達到效果,但並非最優。由於每個產品的業務並不相同,也就很難有通用的優化方案。首先我們先來設立兩個目標。1 如果有可能,序列業務並...