Разрешение Android в интернете игнорируется

У меня есть приложение, которое требует разрешения в Интернете, но оно, похоже, не работает для меня.

Я добавил:

<uses-permission android:name="android.permission.INTERNET"/>

На манифест (над тегом приложения) и при установке приложения мой телефон говорит: "Запросы не запрашиваются", и диалоговое окно разрешений не отображается.

Однако, когда я заменяю ИНТЕРНЕТ КАМЕРОЙ, вот так:

<uses-permission android:name="android.permission.CAMERA"/>

Он работает нормально и отображается на вкладке разрешений в настройках.

Есть идеи?

Спасибо

6 ответов

Если устройство работает под управлением Android 6.0 (уровень API 23) и приложение targetSdkVersion равно 23 или выше, если приложение заявляет в своем манифесте, что оно нуждается в обычном разрешении, система автоматически предоставляет это разрешение приложению во время установки.
Система не предлагает пользователю предоставить нормальные разрешения, и пользователи не могут отозвать эти разрешения.

Как вы можете проверить в официальном документе, разрешение ИНТЕРНЕТ нормально.
Вместо этого разрешение камеры является опасным.

Вы запускаете свое приложение в Android SDK>=23.

Разрешение на Интернет находится под обычным разрешением, поэтому оно не отображает никаких запросов на разрешение, но разрешение камеры находится под Опасным разрешением, поэтому оно отображает приглашение на разрешение.

Если приложение заявляет, что оно нуждается в нормальном разрешении, система автоматически предоставляет разрешение приложению.

https://developer.android.com/guide/topics/permissions/requesting.html

Android только ставит там опасные разрешения. А так как Camera представляет собой опасное разрешение, вы видите его в списке, а поскольку Интернета нет, вы не видите его в списке.

Android различает обычные разрешения (например, ИНТЕРНЕТ) и опасные разрешения (например, КАМЕРА). Пользователь запрашивается только в случае опасных разрешений. Таким образом, поведение, которое вы видите, совершенно нормально.

https://developer.android.com/guide/topics/permissions/normal-permissions.html

Только выбранные разрешения могут быть запрошены для пользователя

проверьте здесь, какие разрешения может запрашивать менеджер разрешений

Это обычно помогает мне:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
Другие вопросы по тегам