diff --git a/src/com/android/browser/EngineInitializer.java b/src/com/android/browser/EngineInitializer.java
index 7beb98d..ec4753c 100644
--- a/src/com/android/browser/EngineInitializer.java
+++ b/src/com/android/browser/EngineInitializer.java
@@ -35,8 +35,10 @@
 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 @@
 
     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 @@
             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 @@
     }
 
 
-}
\ No newline at end of file
+}
