2015-10-19 3 views
-2

Я хотел бы получить список всех разрешений, требуемых приложением (как определено в AndroidManifest.xml). Список должен включать также разрешения, которые были отключены (или просто не включены) пользователем. Является ли это возможным?Android 6.0 автоматически получает список необходимых разрешений

+1

Вы сделали какие-либо исследования или пытались что-нибудь? –

+0

Да, похоже, что API разрешений не позволяет этого: вам нужно знать разрешение, а затем вы можете проверить статус. Теоретически, вы можете проверить все разрешения с помощью checkSelfPermission(), но тогда вам понадобится третий статус возврата, например PackageManager.PERMISSION_DENIED_BUT_REQUIRED. – niezlybiegatz

ответ

0

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

PackageManager p = context.getPackageManager(); 
PackageInfo pi = p.getPackageInfo(context.getPackageName(), PackageManager.GET_PERMISSIONS); 
String[] permissions = pi.requestedPermissions; 
int[] permissionStatus = pi.requestedPermissionsFlags; 

для предоставленных разрешений, вы будете иметь int равен REQUESTED_PERMISSION_GRANTED

+0

Работает: он также охватывает и разрешения, отключенные пользователем. Странно, что отключенные разрешения по-прежнему имеют статус REQUESTED_PERMISSION_GRANTED. – niezlybiegatz

Смежные вопросы