Как получить разрешения времени выполнения с помощью API управления Android?
Я использую Android
Management API для получения разрешения на выполнение android.permission.SYSTEM_ALERT_WINDOW
. Приложение будет установлено на полностью управляемых устройствах. Политика имеет следующиеpermissions
определено:-
defaultPermissionPolicy: "GRANT"
Я также добавил это в раздел политики, касающийся приложений. Однако приложение не получает эти разрешения, и пользователь должен вручную перейти к настройкам и включить это разрешение. Я понимаю, что это разрешение оценивается как разрешение расширенного уровня, но это полностью управляемое устройство.
2 ответа
Android Management API defaultPermissionPolicy может только предоставлять / отклонять запросы разрешений во время выполнения. Например, READ_CONTACTS, WRITE_CONTACTS, ACCESS_FINE_LOCATION, ACCESS_COARSE_LOCATION и т. Д.
SYSTEM_ALERT_WINDOW - это особое разрешение. Это разрешение не ведет себя как опасное или нормальное разрешение. Это конфиденциальное разрешение, требующее авторизации пользователя.
Для получения дополнительной информации вы можете перейти по этой ссылке.
У меня была такая же проблема с AE. Решение было установленоtargetSdkVersion
к 19
в вашем приложении.
Чтобы в полной мере использовать android.permission.SYSTEM_ALERT_WINDOW, обычно необходимо запросить также Draw поверх других приложений, что является специальным разрешением, которое пользователь должен предоставить вручную для каждого приложения. Здесь это красиво описано.