從Android 2.3開始提供了一個新的類名為StrictMode可以説明開發者改進你的Android應用,StrictMode通常可以捕捉到發生在磁片或網路訪 問的應用主執行緒中,可以讓主執行緒UI和動畫在磁片讀寫和網路操作時變得更平滑,避免ANR視窗的發生。
一段示例代碼可以很好的說明Android 2.3新特性StrictMode限制模式的工作方式,我們在Activity的onCreate中加入
public void onCreate() {
if (DEVELOPER_MODE) { //Android開發網提醒大家,這個標記自己設置一個全域的宏,當然Java中我們用一個Boolean類型設置debug模式好了
StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()
.detectDiskReads()
.detectDiskWrites()
.detectNetwork() // 這裡可以替換為detectAll() 就包括了磁片讀寫和網路I/O
.penaltyLog() //列印logcat
.build());
StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder()
.detectLeakedSqlLiteObjects() //探測SQLite資料庫操作
.penaltyLog() //列印logcat
.penaltyDeath()
.build());
}
super.onCreate();
}
全站熱搜
留言列表