Я пытаюсь автоматически предоставить своему приложению некоторые разрешения во время выполнения, в том числе ACCESS_FINE_LOCATION, READ_PHONE_STATE, а также ACTION_MANAGE_OVERLAY_PERMISSION. Обратите внимание, что для этого требуются как минимум права доступа администратора устройства, которые у меня есть.
В то время как первые два работают безупречно через
dpm.setPermissionGrantState(componentName, "com.my.app", Manifest.permission.READ_PHONE_STATE, DevicePolicyManager.PERMISSION_GRANT_STATE_GRANTED);
dpm.setPermissionGrantState(componentName, "com.my.app", Manifest.permission.ACCESS_FINE_LOCATION, DevicePolicyManager.PERMISSION_GRANT_STATE_GRANTED);
ACTION_MANAGE_OVERLAY_PERMISSION вообще не работает. Я полагаю, что это может быть связано с тем, что это не часть Manifest.permission, а вместо этого android.settings.action.MANAGE_OVERLAY_PERMISSION. Однако это все еще разрешение, которое я хочу получить автоматически.
Редактировать: Хотя кажется, что это разрешение предоставляется автоматически любому приложению, которое его запрашивает, это касается только приложений, распространяемых через PlayStore. К сожалению, мое приложение НЕ распространяется таким образом.