仅在开发中启用严格模式

时间:2013-05-05 07:50:23

标签: android

我正在构建SDK,并希望在开发模式下更改有关严格模式的内容。

我怎么知道我是否在代码中处于开发模式?

3 个答案:

答案 0 :(得分:9)

您可以使用BuildConfig.DEBUG值,该值由R.java等ADT工具自动生成。对于非导出的构建,它总是如此,当您导出有符号或无符号的apk时,它将被设置为false。

if(BuildConfig.DEBUG) {
   //In debug mode
}

答案 1 :(得分:6)

if(BuildConfig.DEBUG) {
   StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
   StrictMode.setThreadPolicy(policy);
}

if (DEVELOPER_MODE) {
         StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()
                 .detectDiskReads()
                 .detectDiskWrites()
                 .detectNetwork()   // or .detectAll() for all detectable problems
                 .penaltyLog()
                 .build());
         StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder()
                 .detectLeakedSqlLiteObjects()
                 .detectLeakedClosableObjects()
                 .penaltyLog()
                 .penaltyDeath()
                 .build());
     }
     super.onCreate();

有关更多信息,请查看:http://developer.android.com/reference/android/os/StrictMode.html

答案 2 :(得分:-3)

在Android手机上使用

  • 设置 - >应用程序 - >未知来源 - 启用
  • 设置 - >开发 - > USB调试 - 启用它