检查开发设置无法正常工作的功能

时间:2019-05-24 13:20:40

标签: android

我有一个功能可以检查是否启用了开发人员模式,如这里的建议:

Android - How to check if Developer option is enabled

代码如下:

public boolean isDevMode() {
    if(Build.VERSION.SDK_INT >= 17) {
        return android.provider.Settings.Global.getInt(getApplicationContext().getContentResolver(),
                Settings.Global.DEVELOPMENT_SETTINGS_ENABLED , 0) != 0;
    } else {
        return false;
    }
}

它可以在API 26+上完美运行,但我刚刚在API 24的模拟器上对其进行了测试,无论是否启用了开发人员设置,它都会返回false。

我想念什么? <26是否有其他选择?

1 个答案:

答案 0 :(得分:0)

通过仅在oreo下进行构建将默认值更改为true来解决此问题。

public boolean isDevMode() {
   if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
        return Settings.Secure.getInt(context.getContentResolver(), Settings.Global.DEVELOPMENT_SETTINGS_ENABLED, 0) != 0;
   } else {
        return Settings.Secure.getInt(context.getContentResolver(), Settings.Global.DEVELOPMENT_SETTINGS_ENABLED, 1) != 0;
   }
}