无法修改小米Miui设备中的系统设置

时间:2018-09-04 04:39:02

标签: java android runtime-permissions xiaomi miui

即使在用户允许修改系统设置(write_settings)权限的情况下,在我的应用程序中,该权限实际上也没有授予我的应用程序。

允许用户修改设置:

User allowed allow modify settings pic

但是,当我进入设置>已安装的应用程序>我的应用程序>其他权限时,为了检查授予的权限,我的应用程序的修改系统设置权限被拒绝。

Modify system settings permission denied pic

我已在清单文件中添加了写入设置权限

 <uses-permission android:name="android.permission.WRITE_SETTINGS" />

我也使用代码打开设置意图

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M){
            boolean settingsCanWrite = Settings.System.canWrite(getContext());
            if(!settingsCanWrite){

                showWriteSettingsDialog();

            }
        }
private void showWriteSettingsDialog(){

    final Dialog dialog = new Dialog(getContext());
    LottieAnimationView animation_view = dialog.findViewById(R.id.animation_view);
    dialog.setContentView(R.layout.write_settings_dialog);
    dialog.getWindow().setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
    button = dialog.findViewById(R.id.write_settings_button);
    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            dialog.dismiss();
            Intent intent = new Intent(Settings.ACTION_MANAGE_WRITE_SETTINGS);
            intent.setData(Uri.parse("package:" + getContext().getPackageName()));
            intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            startActivityForResult(intent,CODE_WRITE_SETTINGS_PERMISSION);
        }
    });
    dialog.show();

}

它可以在我测试过的其他设备上运行,但不能在小米的MIUI设备上运行。如果可能,请为我提供解决方法。我非常需要此权限,因为我的应用程序要更改铃声。 此linkCan't get WRITE_SETTINGS permission中的答案已实现,但无法在小米设备中使用

0 个答案:

没有答案