隨著移動平台的發展和其應用的不斷改善,質量成為決定成敗的關鍵。使用者要求他們選擇安裝的應用響應快、效能好,如果某個應用不能提供卓越的功能和穩定的使用者體驗,那這樣的應用注定會被很快解除安裝。
儘管現在android智慧型手機和平板電腦的執行速率越來越快,但開發者仍需牢記,應用的執行環境仍受到電池和處理器等諸多資源的限制。以下是給android應用開發者10個建議,以便能在當前和以後的所有android裝置都能執行出最佳效果。
1.首先要有良好的編碼習慣
乙個優秀的android應用開發者應該善於運用常識、完善的演算法和標準設計模式。要有資源意識,開啟了就要記得關閉,盡量做到晚獲取,早釋放。這些由來已久的編碼準則同樣適用android應用開發,尤其是使用基礎裝置服務時。
2.讓阻塞操作遠離主ui執行緒
通過使用asynctask、執行緒、intentservice和自定義後台服務,保證應用的靈活性。使用載入工具簡化游標等長時間載入資料的狀態管理。當有其他程式執行時,不能讓你的應用滯後或中止。
如果乙個操作需要消耗較多時間和資源時,取消該操作,換成非同步處理,這樣應用就能保持響應,使用者可以繼續各種操作。該方法適用磁碟讀寫、訪問內容提供方、資料庫和網際網路,以及解析和其他需要花費較長時間的任務。
3.使用最新的android sdk版本和api
使用android平台的最新產品,保證你的應用緊跟android的更新步伐。隨著android平台的不斷發展,部分功能可能被棄用或被更好的 功能取代,核心api接收了bug修復和效能改進,新api有助於android應用開發者編寫出更穩定的應用。要明白最佳的做法總是隨著時間的推移而變,聰明的android應用開發者應該總是站在整個平台的最前沿。
4.考慮使用strictmode
從android 2.3開始提供了乙個新的類strictmode,該類可以用於捕捉發生在應用程式主線程中耗時的磁碟、網路訪問或函式呼叫,可以幫助開發者改進程式,使主線程處理ui和動畫在磁碟讀寫和網路操作時變得更平滑,避免主線程被阻塞。
5.發布前禁用或儘量減少除錯
如果android應用開發周期較長,你很可能在應用中內建了一些日誌或除錯**,在發布前確保這些功能已經最小化或完全禁用。
6.確保ui布局簡單優雅
簡單的螢幕不僅方便閱讀,還能加快載入速度。與其在乙個單一螢幕上堆砌太多不必要的功能,不如花時間去開發優雅的使用者介面。簡單優雅的ui不僅能提高應用效能,還能提高使用者使用該應用時的效率。
7.根據目標裝置調整應用資源
8.使用hierachy viewer視覺化除錯工具
hierachy viewer能很方便地在開發者設計,除錯和調整介面時,快速定位問題,解決問題,提高開發效率。
9.使用layoutopt進行布局優化
layoutopt是一款簡單的命令列工具,可幫助找到不必要的控制項巢狀以及縮減布局資源,從而使應用變得可能「苗條」。控制項越少、布局層次越淺,效能就越好。
10.使用traceview及其他android工具進行分析
android sdk隨帶了很多用於應用分析的工具,其中最受歡迎的是traceview,這款圖形工具可以幫助除錯和找到應用中的效能瓶頸。
Android 開發要加油
不知不覺,來到公司實習已經將近一年的時間了。自從去年六月份研二開始實習,如今已經步入研三了。研究生生涯還有大半年就要結束了,似乎應該寫點什麼。大學四年的生活感覺一晃就過去了。本科學的是通訊工程,軟體方面學習過c 組合語言,看到超過50行的 就很煩,自己從未動手寫過超過50行的 一直覺得寫程式離我很遙...
android開發要避免的那些坑
flag 解釋start sticky 如果service程序被kill掉,保留service的狀態為開始狀態,但不保留遞送的intent物件。隨後系統會嘗試重新建立service,由於服務狀態為開始狀態,所以建立服務後一定會呼叫onstartcommand intent,int,int 方法。如果...
android開發要避免的那些坑
flag 解釋start sticky 如果service程序被kill掉,保留service的狀態為開始狀態,但不保留遞送的intent物件。隨後系統會嘗試重新建立service,由於服務狀態為開始狀態,所以建立服務後一定會呼叫onstartcommand intent,int,int 方法。如果...