1.採用硬件加速,在androidmanifest.xml中application添加 android:hardwareAccelerated="true"。不過這個須要在android 3.0才能夠使用。 android
2. View 中設置緩存屬性. setDrawingCache爲true. c++
3. 優化你的佈局。經過Android sdk中tools目錄下的layoutopt 命令查看你的佈局是否須要優化。 數據庫
4. 動態加載View. 採用ViewStub 避免一些不常常的視圖長期握住引用. 緩存
5.將Acitivity 中的Window 的背景圖設置爲空。getWindow().setBackgroundDrawable(null); android的默認背景是否是爲空。 網絡
6. 採用<merge> 優化佈局層數。 採用<include >來共享佈局。 數據結構
7. 查看Heap 的大小 app
8. 利用TraceView查看跟蹤函數調用。有的放矢的優化。 函數
9. cursor 的使用。不過要注意管理好cursor,不要每次打開關閉cursor.由於打開關閉Cursor很是耗時。Cursor.require用於刷新cursor. 佈局
10.採用環形Buffer(能夠採用鏈表數據結構實現)。能夠設置一個鏈表長度的上限,根據手勢的變化來不斷地更新環形Buffer的內容。 優化
11.採用SurfaceView在子線程刷新UI, 避免手勢的處理和繪製在同一UI線程(普通View都這樣作)。
12.採用JNI,將耗時間的處理放到c/c++層來處理。
13.有些能用文件操做的,儘可能採用文件操做,文件操做的速度比數據庫的操做要快10倍左右。
14. 懶加載和緩存機制。訪問網絡的耗時操做啓動一個新線程來作,而不要再UI線程來作。