2011年12月13日

Android 4.0のStrictモードのログを止める

Android 4.0をソースコードからeng(=Engineering)モードでビルドすると、システム全体でStrictモードが有効になります。その状態だとStrictモード違反のログが大量に出て、logcatのリングバッファがすぐに一周してしまい、ブート直後のログが失われてしまいます。

そこで、ソースコードを修正してこのログを出ないようにしました。



ソースコードの修正

frameworks/base/core/java/android/os/StrictMode.java を以下のように修正します。

diff --git a/core/java/android/os/StrictMode.java b/core/java/android/os/StrictM
index 4d7a9bb..cc98e69 100644
--- a/core/java/android/os/StrictMode.java
+++ b/core/java/android/os/StrictMode.java
@@ -113,7 +113,8 @@ public final class StrictMode {
     private static final String TAG = "StrictMode";
     private static final boolean LOG_V = Log.isLoggable(TAG, Log.VERBOSE);
 
-    private static final boolean IS_USER_BUILD = "user".equals(Build.TYPE);
+    //private static final boolean IS_USER_BUILD = "user".equals(Build.TYPE);
+    private static final boolean IS_USER_BUILD = true;
     private static final boolean IS_ENG_BUILD = "eng".equals(Build.TYPE);
 
     /**

Android 4.0のEmulatorでのログ

この状態で取得したlogcatのログ

Android log of emulator of Android 4.0 (without StrictModeViolation)

kernelのログ

Kernel boot log of emulator of Android 4.0

/etc/cpuinfo

/proc/cpuinfo of emulator of Android 4.0

getpropの結果

getprop output of emulator of Android 4.0



トラックバックURL

コメントする

名前
URL
 
  絵文字
 
 
記事検索
最新コメント
アクセスカウンター
  • 今日:
  • 昨日:
  • 累計:

QRコード
QRコード