Ограничены ли разрешения приложений определенными c действиями? - PullRequest
0 голосов
/ 16 апреля 2020

В основной активности я спросил у пользователя разрешения на использование камеры. Однако я хотел использовать камеру в другом упражнении, давайте SecondaryActivity. Я попросил разрешения, подобные этому, в одном упражнении: -

if(ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.CAMERA) 
      != PackageManager.PERMISSION_GRANTED){
          ActivityCompat.requestPermissions(this, PERMISSIONS_REQUIRED, 1);
}

и проверке других действий непосредственно перед запуском службы.

if(ContextCompat.checkSelfPermission(SecondaryActivity.this, Manifest.permission.CAMERA)
                == PackageManager.PERMISSION_GRANTED) { // Do Something }

Так как оба this здесь разные, мне придется запрашивать разрешения для разных действий по-разному или нет?

1 Ответ

1 голос
/ 16 апреля 2020

Разрешения предоставляются или аннулируются для всего приложения, а не для конкретной операции c.

Однако рекомендуется всегда проверять, есть ли у вас разрешение, прямо перед тем, как оно понадобится. Пользователи могут предоставлять и отзывать разрешения во время выполнения. Несмотря на то, что отзыв разрешения приведет к возобновлению вашей деятельности.

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