Разрешение наложения на мгновенное приложение - PullRequest
0 голосов
/ 25 апреля 2018

Я пытаюсь использовать «плавающий виджет», запускаемый из мгновенного приложения, для этого мне нужно получить ACTION_MANAGE_OVERLAY_PERMISSION, который я смогу получить таким образом:

intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
               Uri.parse("package:" + getPackageName()));
startActivityForResult(intent, APP_PERMISSION_REQUEST);

К сожалению, я получаю эту ошибку во время выполнения, когда я пытаюсь запустить это намерение:

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.google.android.instantapps.samples.hellofeature/com.instantappsamples.feature.hello.HelloActivity}: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.settings.action.MANAGE_OVERLAY_PERMISSION dat=package:com.google.android.instantapps.samples.hellofeature }

Возможно ли, что это право не может быть получено из мгновенного приложения?(Установленное приложение работает нормально)

1 Ответ

0 голосов
/ 25 апреля 2018

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

Даже если вы смогли перейти к этому действию (или, если вы просто пошли туда как пользователь, перейдя к нему в настройкахприложение), ваше мгновенное приложение не будет разрешено получить это разрешение.Как по техническим причинам (так как PackageManager обычно не знает о мгновенных приложениях, по крайней мере, в версиях до O), так и по политике.В частности, наложение подразумевает некоторый уровень фоновой работы, который запрещен согласно FAQ .(Также обратите внимание, что оверлей не указан в списке разрешенных разрешений этой страницы.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...