Добавление большого количества разрешений в файл AndroidManifest.xml может вызвать проблемы? Почему приложение не запрашивает у пользователя разрешения? - PullRequest
0 голосов
/ 17 января 2019

Добавление дополнительных разрешений не может вызвать проблемы (насколько я знаю), так почему бы не запросить столько разрешений, сколько возможно? Включая ненужные?

При добавлении этих разрешений в AndroidManifest.xml, почему приложение не запрашивает у пользователя эти разрешения при первом запуске? Я имею в виду, что те, кто в Google Play, всегда просят у меня разрешения на хранение и камеру. В чем причина?

1 Ответ

0 голосов
/ 18 января 2019

Вы должны следовать рекомендациям по разрешениям.

  1. Вы должны указать в своем Манифесте только те разрешения, которые вам необходимы. Если вы запрашиваете ненужные или слишком много, пользователи, скорее всего, удалят ваше приложение даже до того, как полностью его запустят.

  2. Лучше всего запрашивать каждое разрешение или группу разрешений всякий раз, когда это необходимо. Тем не менее, если это всего лишь пара разрешений, вы можете запросить их сразу во время запуска.

  3. Тот факт, что Разрешение объявлено в Манифесте, не означает, что оно предоставлено, это только означает, что приложение будет требовать его. И да, вам все еще нужно попросить каждого быть предоставленным.

  4. Практический пример. Приложение камеры:

    • При первом запуске следует запросить память и камеру разрешения, поэтому он может делать фотографии и записывать их в файл.
    • Затем пользователь переходит в режим видео, в этот момент вы можете попросить Разрешение аудио, поэтому видео можно записывать со звуком.
    • Вероятно, приложение может иметь дополнительную опцию в окне настроек, которая может позволяют сохранить местоположение GPS в данных EXIF. Итак, при доступе к таким Настройка приложения может запрашивать разрешение на местоположение.

На первый взгляд, это может звучать как множество запросов в разных точках, но именно так указано в лучших практиках. Разрешения должны запрашиваться таким образом, чтобы не перегружать пользователя.

Подробнее в следующей ссылке: https://developer.android.com/training/permissions/usage-notes

И последнее уточнение. Если для определенного вызова API требуется разрешение, которое не было предоставлено, исключение будет выдано в момент выполнения такого вызова API.

...