我有一个功能可以检查是否启用了开发人员模式,如这里的建议:
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是否有其他选择?
答案 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;
}
}