android效能優化
1.http用gzip壓縮,設定連線超時時間和響應超時時間
http請求按照業務需求,分為是否可以快取和不可快取,那麼在無網路的環境中,仍然通過快取的httpresponse瀏覽部分資料,實現離線閱讀。
2.listview 效能優化
1).復用convertview
在getitemview中,判斷convertview是否為空,如果不為空,可復用。如果couvertview中的view需要新增listerner,**一定要在if(convertview==null){}之外。
2).非同步載入
item中如果包含有webimage,那麼最好非同步載入
3).快速滑動時不顯示
當快速滑動列表時(scroll_state_fling),item中的或獲取需要消耗資源的view,可以不顯示出來;而處於其他兩種狀態(scroll_state_idle 和scroll_state_touch_scroll),則將那些view顯示出來
4.非同步任務,分為核心任務和普通任務,只有核心任務中出現的系統級錯誤才會報錯,非同步任務的ui操作需要判斷原activity是否處於啟用狀態
5.盡量避免static成員變數引用資源耗費過多的例項,比如context
6.使用weakreference代替強引用,弱引用可以讓您保持對物件的引用,同時允許gc在必要時釋放物件,**記憶體。對於那些建立便宜但耗費大量記憶體的物件,即希望保持該物件,又要在應用程式需要時使用,同時希望gc必要時**時,可以考慮使用弱引用。
7.超級大胖子bitmap
及時的銷毀(activity的ondestroy時,將bitmap**)
設定一定的取樣率
巧妙的運用軟引用
drawable對應resid的資源,bitmap對應其他資源
8.保證cursor 占用的記憶體被及時的釋放掉,而不是等待gc來處理。並且 android明顯是傾向於編 程者手動的將cursor close掉
9.執行緒也是造成記憶體洩露的乙個重要的源頭。執行緒產生記憶體洩露的主要原因在於執行緒 生命週期的不可控
10.如果imageview的是來自網路,進行非同步載入
11.應用開發中自定義view的時候,互動部分,千萬不要寫成執行緒不斷重新整理介面顯示,而是根據touchlistener事件主動觸發介面的更新
Android效能優化
1.節制地使用service 如果應用程式當中需要使用service來執行後台任務的話,請一定要注意只有當任務正在執行的時候才應該讓service執行起來。另外,當任務執行完之後去停止service的時候,要小心service停止失敗導致記憶體洩露的情況 2.當介面不可見時釋放記憶體 當使用者開啟另...
Android效能優化
本篇主要是對 google推出的效能優化典範 進行乙個通篇的整理 主要在於一些具體的優化技巧 至於60fps 掉幀 gc 記憶體抖動 閾值 等等這些效能術語的概念裡面不做多概括,請自行查閱 本篇從以下幾點延伸擴充套件 systrace systrace 在android ddms 裡自帶,可以用來跟...
Android效能優化
如果使用listview或者gridview,注意convertview復用以及viewholder的使用,可以不用每次都建立新的布局以及進行findviewbyid這樣費時的操作,即使某種itemtype型別的itemview數量只有乙個。推薦使用recyclerview,功能更強大,效能更好,並...