Комментарии 5
Я может ошибаюсь, но стиль написания статьи (и особенно кода с построчными комментариями) похож на чат-ботовский. Списки, списки, списки. Не спорю, что освежить информацию в голове всегда полезно.
Несколько тема не раскрыта:
Не описаны особенности (Разрешения для Wear OS, Automotive разрешения, TV-специфичные разрешения, Разрешения для Instant Apps).
Нет информации о механизме AppOps (скрытая система управления разрешениями), разрешениях для работы с биометрией, разрешениях, связанных с VR/AR функциональностью, Permission groups и их влияние на поведение системы.
Пропущены важные технические детали: Не описан механизм URI permissions, отсутствует информация о cross-app permission delegation, нет данных о split permissions (появились в Android 12).
Не описан один из важных моментов: в разных версиях Андроида на одно и то же действие могут быть нужны разные разрешения. Например, это актуально для Bluetooth. Разрешения в манифесте и коде иногда приходится запрашивать с учетом версии.
Что-то совсем куцый список разрешений.
Ну и выше сказали про то что разрешения от версий ведроида зависят. Например доступа к файловой системе: в старой версии ведроида на всё было одно, а в более новых уже не менее 2 (доступ к аудиофайлам и отдельно к видео с фото).
А потом ты сталкиваешься с каким-нибудь Samsung Kids, в котором Intent.ACTION_GET_CONTENT, Intent.ACTION_OPEN_DOCUMENT, Intent.ACTION_PICK выкошены и фиг знает как определить надёжно, что ты в песочнице... или с Huawei Lenovo Tab 11.5 S который не аттачится в дебаг и просто молча валит ваше приложение с "Действие не поддерживается ни в одном приложении" при том что там кроме стандартного выбора файла и чтения из него (единственное право которое просится -android.permission.READ
_EXTERNAL_STORAGE
) нет ничего. Или c `On Android 13, we're deprecating READ_EXTERNAL_STORAGE and WRITE_EXTERNAL_STORAGE permissions in favour of better alternative APIs for media
`, ну т.е. в статье уже давно неактуальная инфа. Не говоря о прочих приседаниях с опросом доступных прав и фич который просто вымораживают своей "удобностью" и "очевидностью". Половина кода превращается в бездумную пасту костылей для пританцовывания на этих граблях с разрешениями
Ликбез по разрешениям в Android