Устройства Xiaomi Android - правильный запрос разрешений для фоновых местоположений

Мы разрабатываем приложение, которому требуется несколько разрешений, чтобы получить местоположение пользователя в фоновом режиме.

У нас возникли проблемы с запросом необходимых разрешений на устройствах Xiaomi. Кажется, что в дополнение к разрешению местоположения и белому списку приложений для оптимизации батареи требуются два дополнительных шага, характерных для устройств Xiaomi:

  1. Отключение энергосбережения:

введите описание изображения здесь

  1. Включение автозапуска:

введите описание изображения здесь

Проблема в том, что мы не нашли способа автоматически запросить разрешение у пользователя, и единственный способ, который мы нашли, — это заставить пользователя вручную перейти к этим экранам и изменить настройки.

Мы нашли короткие пути, чтобы пройти «на полпути».

  1. Переходим к настройкам питания:

Намерение намерение = новое намерение("miui.intent.action.POWER_HIDE_MODE_APP_LIST").addCategory(Intent.CATEGORY_DEFAULT);

  1. Переходим к настройкам автозапуска:

Намерение намерение = новое намерение("miui.intent.action.OP_AUTO_START").addCategory(Intent.CATEGORY_DEFAULT);

Но от пользователя по-прежнему требуется множество неинтуитивных действий.

Наша цель:

  1. Нам бы очень хотелось упростить процесс для пользователя. Оптимально, чтобы появился системный диалог, который запрашивает у пользователя разрешения, вместо того, чтобы вручную изменять настройки, как в белом списке обычных устройств Android:

введите описание изображения здесь

Возможно ли использовать специальное расширение SDK Xiaomi?

  1. Если (1) невозможно, по крайней мере, нам нужен способ узнать, меняет ли пользователь эти настройки или нет. В настоящее время мы не знаем и не можем сообщить пользователю, работает ли приложение правильно или нет!

Заранее спасибо,

Таль


person TalL    schedule 20.03.2019    source источник
comment
Вы решили это?   -  person AlexS    schedule 05.07.2021