Невозможно изменить настройки системы на устройствах Xiaomi Miui - PullRequest
0 голосов
/ 04 сентября 2018

В моем приложении даже после того, как пользователь разрешил изменять системные настройки (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();

}

Он работает на других устройствах, которые я тестировал, но не работает в устройствах Xiaomi MIUI. Если возможно, пожалуйста, предоставьте мне работу. Я отчаянно нуждался в этом разрешении, так как мое приложение хочет менять мелодии звонка. Ответы в этой ссылке ( Не удается получить разрешение WRITE_SETTINGS уже реализовано, но не работает на устройствах xiaomi

...