1. 程式人生 > >Android效能優化一些方法

Android效能優化一些方法

1.採用硬體加速,在androidmanifest.xml中application新增 android:hardwareAccelerated=”true”。不過這個需要在android 3.0才可以使用。
2.View 中設定快取屬性.setDrawingCache為true。
3.優化你的佈局。通過Android sdk中tools目錄下的layoutopt 命令檢視你的佈局是否需要優化。
4.動態載入View.採用ViewStub 避免一些不經常的檢視長期握住引用。
5.將Acitivity 中的Window 的背景圖設定為空。getWindow().setBackgroundDrawable(null);android的預設背景是不是為空。
6.採用 優化佈局層數。 採用來共享佈局。
7.檢視Heap 的大小。
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執行緒來做。
15.訊息快取通過handler.obtainMessage複用之前的message。

16.檔案IO快取,使用具有快取策略的輸入流,BufferedInputStream替代InputStream,BufferedReader替代 Reader,BufferedReader替代BufferedInputStream.對檔案、網路IO皆適用。例如:
HttpURLConnection con=(HttpURLConnection)url.openConnection();BufferedReader input =newBufferedReader(new InputStreamReader(con.getInputStream()));
Strings;
while((s = input.readLine()) != null) {

}

17.Layout優化:使用抽象佈局標籤(include,viewstub,merge)、去除不必要的巢狀和View節點、減少不必要的infalte及其他Layout方面可調優點,順帶提及佈局調優相關工具 (hierarchy viewer和lint)。
18.TextView屬性優化:TextView的android:ellipsize=”marquee”跑馬燈效果極耗效能。
19.使用hashMap代替arrayList,時間複雜度降低一個數量級。

20.資料庫優化,

http://www.trinea.cn/android/database-performance/

相關推薦

Android效能優化一些方法

1.採用硬體加速,在androidmanifest.xml中application新增 android:hardwareAccelerated=”true”。不過這個需要在android 3.0才可以使用。 2.View 中設定快取屬性.setDrawingC

Android效能優化常用方法

本篇部落格主要介紹關於效能優化的一些方法,以及效能分析工具的使用。 一 效能優化的常用方法 主要內容包括佈局優化,繪製優化,記憶體洩露優化,相應速度優化,ListView優化,Bitmap優化,執行緒優化,以及一些效能優化建議,在介紹相應速度優化的同時,還介紹了AN

Android效能優化一些方法

1.採用硬體加速,在androidmanifest.xml中application新增  android:hardwareAccelerated="true"。不過這個需要在android 3.0才可以使用。 2. View 中設定快取屬性. setDrawingCache為true. 3. 優化你的佈局。

不修改程式碼就能優化ASP.NET網站效能一些方法

目錄 配置OutputCache 啟用內容過期 解決資原始檔升級問題 啟用壓縮 刪除無用的HttpModule 其它優化選項 本文將介紹一些方法用於優化ASP.NET網站效能,這些方法都是不需要修改程式程式碼的。 它們主要分為二個方面: 1. 利用ASP.NET自身的

Android 效能優化方法

Android 效能優化方法 開發中常會做一些效能優化,主要優化內容包括佈局層級優化,繪製優化,記憶體洩露優化(音訊,視訊,io等回收),響應速度優化,ListView優化,Bitmap優化,執行緒優化以及一些效能優化,在面試中面試官也會經常問到該點 . 前面博文我收集的各大

Android效能優化-方法耗時

方法耗時 在我之前的部落格如何優雅的檢測主執行緒中的耗時方法中分析了:利用Android系統的訊息機制原理去檢測主執行緒中的耗時方法,其實對於執行方法引起的效能開銷主要分兩類: 執行時間長的方法。 執行次數多的方法。 對於這兩類方法,可以使用工具Tracev

Android——效能優化之SparseArray

相信大家都用過HashMap用來存放鍵值對,最近在專案中使用HashMap的時候發現,有時候 IDE 會提示我這裡的HashMap可以用SparseArray或者SparseIntArray等等來代替。 SparseArray(稀疏陣列).它是Android內部特有的api,標準的jdk是沒有這

Android效能優化之較精確的獲取影象顯示到螢幕上的時間

轉載自:http://blog.desmondyao.com/android-show-time/ 這兩天我的包工頭歪龍木·靈魂架構師·王半仙·Yrom給我派了一個活:統計App冷啟動時間。這個任務看上去不難,但是要求統計出來的時間要準,要特別準。 意思就是,我必須要按Activity繪製到

Android效能優化----經典總結

Android 效能優化典範(一):主要從 Android 的渲染機制、記憶體與 GC、電量優化三個方面展開,介紹了 Android 中效能問題的底層工作原理,以及如何通過工具來找出效能問題及提升效能的建議。 Android 效能優化典範(二):主要內容為:電量優化、網路優化、Android W

Android效能優化——介面流暢度優化

Android效能優化——介面流暢度優化   序言 首先流暢度不僅僅是受到程式碼的影響。也會跟機器的硬體配置有關係。所以第一點需要明確的是,流暢度最低保證在哪個硬體配置之上。這樣有了一個基點之後,才能比較好明確優化目標。不然你拿一個兩三年前的機子來做優化。那就真的是吃力不討好的

Android效能優化之圖片壓縮優化

1 分類Android圖片壓縮結合多種壓縮方式,常用的有尺寸壓縮、質量壓縮、取樣率壓縮以及通過JNI呼叫libjpeg庫來進行壓縮。 參考此方法:Android-BitherCompress 備註:對於資源圖片直接使用:tiny壓縮 2 質量壓縮(1)原理:保持畫素的前提下改變圖片的位深及透明度,(即:通

淺談react效能優化方法

這篇文章主要介紹了淺談react效能優化的方法,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧 React效能優化思路 軟體的效能優化思路就像生活中去看病,大致是這樣的: 使用工具來分析效能瓶頸(找病根) 嘗試使用優化技巧解決這些問題(服藥)

Android效能優化—不建議使用列舉Enum

最近優化App,由於專案中使用了Lib,而Lib程式碼中包含了大量的列舉型別,導致App佔用記憶體過多。好吧,知道問題點,那就幹掉,拋棄之~ 問題是解決了,為啥會這樣呢? 先來看看Android官網的說明吧: 看見了吧,Android官網不建議咱們使用enums,說的也很清楚了,佔用記憶體多(E

Android 效能優化——記憶體篇

歡迎轉載,轉載請標明出處【Hoolay Team】: http://www.cnblogs.com/hoolay/p/6278229.html Author : Hoolay Android Team  Chiclaim 一、android官方一

【藝術探索筆記】第 15 章 Android 效能優化

第 15 章 Android 效能優化 Android 裝置作為一種移動裝置,不管是記憶體還是 CPU 的效能都受到了一定的限制,無法像 PC 那樣具有超大的記憶體和高效能的 CPU。所以 Android 程式不可能無限制的使用記憶體和 CPU 資源,過多的使

Android效能優化之apk瘦身技巧

隨著專案迭代,新功能的增加。回導致apk越大。那麼在下載安裝過程中。使用者耗費的流量越多。 安裝等待的時間也會越長。這就意味著下載轉化率會越低。那麼如何apk瘦身呢? 理解APK結構 在討論怎麼減小Apk體積之前,理解一個應用的APK結構是非常有幫助的。一個ap

Android 效能優化大全

佈局優化 1.減少佈局巢狀的層級 2.相對於RelativeLayout,更適合用LinearLayout 3.使用<include>和<merge>以及ViewStub標籤繪製優化 1.onDraw方法裡面儘量不要建立新的物件 2.onDraw方法中儘量不要執行耗時操作

【朝花夕拾】Android效能優化篇之(四)Apk打包

        APK,即Android Package,是將android程式和資源整合在一起,形成的一個.apk檔案。相信所有的Android程式設計師是在IDE的幫助下,完成打包輕而易舉,但對打包流程真正清楚的可能並不多。本章的內容比較簡單,也是非常基礎的內容,但是對理解android應用的結構卻有很大

【朝花夕拾】Android效能優化篇之(一)序言及JVM篇

序言 筆者從事Anroid開發有些年頭了,深知掌握Anroid效能優化方面的知識的必要性,這是一個程式設計師必須修煉的內功。在面試中,它是面試官的摯愛,在工作中,它是程式碼質量的攔路虎,其重要性可見一斑。在團隊中,效能優化的工作又往往由經驗豐富的老師傅來完成,可見要做好效能優化,絕不是一件容易的事情。    

【朝花夕拾】Android效能優化篇之(五)Android虛擬機器簡介

前言        Android虛擬機器的使用,使得android應用和Linux核心分離,這樣做使得android系統更穩定可靠,比如程式中即使包含惡意程式碼,也不會直接影響系統檔案;也提高了跨平臺相容性。在Android4.4以前的系統中,Android系統均採用Dalvik作為執行andorid程式的