diff options
author | Tarun Nainani <tnainani@codeaurora.org> | 2015-01-07 12:40:09 -0800 |
---|---|---|
committer | WebTech Code Review <code-review@localhost> | 2015-01-08 13:56:24 -0800 |
commit | a1d74d64e3ffce78f8ea03b4301b1180bf11c9f3 (patch) | |
tree | 50d1ae476aeb42a93e34ed8a00f036835f75aa9e /src/com/android/browser/EngineInitializer.java | |
parent | e5a847fe65b6315f839ac4269931cdfbe2262542 (diff) | |
download | android_packages_apps_Gello-a1d74d64e3ffce78f8ea03b4301b1180bf11c9f3.tar.gz android_packages_apps_Gello-a1d74d64e3ffce78f8ea03b4301b1180bf11c9f3.tar.bz2 android_packages_apps_Gello-a1d74d64e3ffce78f8ea03b4301b1180bf11c9f3.zip |
Add support for enabling strict mode via command line.
Change-Id: Ibd0e1f0c6d8a2582dedc1047476c810a573ea123
Diffstat (limited to 'src/com/android/browser/EngineInitializer.java')
-rw-r--r-- | src/com/android/browser/EngineInitializer.java | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/src/com/android/browser/EngineInitializer.java b/src/com/android/browser/EngineInitializer.java index 7beb98d9..ec4753cb 100644 --- a/src/com/android/browser/EngineInitializer.java +++ b/src/com/android/browser/EngineInitializer.java @@ -35,8 +35,10 @@ import android.content.Intent; import android.os.AsyncTask; import android.os.Handler; import android.os.Looper; +import android.os.StrictMode; import android.util.Log; +import org.codeaurora.swe.BrowserCommandLine; import org.codeaurora.swe.Engine; import java.util.ArrayList; @@ -88,6 +90,9 @@ public class EngineInitializer { private static long sDelayForTesting = 0; + //Command line flag for strict mode + private static final String STRICT_MODE = "enable-strict-mode"; + @VisibleForTesting public static void setDelayForTesting(long delay) { @@ -204,6 +209,24 @@ public class EngineInitializer { Engine.initialize(ctx); // Add the browser commandline options BrowserConfig.getInstance(ctx).initCommandLineSwitches(); + + //Note: Only enable this for debugging. + if (BrowserCommandLine.hasSwitch(STRICT_MODE)) { + Log.v(LOGTAG, "StrictMode enabled"); + StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder() + .detectDiskReads() + .detectDiskWrites() + .detectNetwork() + .penaltyLog() + .build()); + StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder() + .detectLeakedSqlLiteObjects() + .detectLeakedClosableObjects() + .penaltyLog() + .penaltyDeath() + .build()); + } + //Enable remote debugging by default Engine.setWebContentsDebuggingEnabled(true); mInitializationCompleted = true; @@ -323,4 +346,4 @@ public class EngineInitializer { } -}
\ No newline at end of file +} |