В чем разница между ACCESS_NETWORK_STATE и Интернетом?
В чем разница между ACCESS_NETWORK_STATE и Интернетом?
Если я использую INTERNET, нужно ли использовать ACCESS_NETWORK_STATE?
Другими словами, могу ли я использовать ИНТЕРНЕТ без использования ACCESS_NETWORK_STATE?
Ответы
Ответ 1
Из документация:
ACCESS_NETWORK_STATE
:
Позволяет приложениям получать доступ к информации о сетях
INTERNET
:
Позволяет приложениям открывать сетевые сокеты.
Короче говоря, разрешение INTERNET
позволяет вам использовать Интернет, тогда как ACCESS_NETWORK_STATE
будет просто предоставлять вам информацию о сети, например, независимо от того, подключены ли вы к сети.
Вы можете использовать любой из них, не требуя другого. Если вы не убедитесь, что у вас есть действующее сетевое соединение, прежде чем пытаться использовать Интернет, ваши HTTP-запросы просто провалятся.
Ответ 2
android.permission.INTERNET
достаточно, если вы просто хотите использовать интернет (подключиться к веб-службе или показать веб-страницу в веб-браузере).
android.permission.ACCESS_NETWORK_STATE
"приятно иметь" запрашивать статус состояния сети перед использованием Интернета.
Ответ 3
ИНТЕРНЕТ позволяет использовать интернет
ACCESS_NETWORK_STATE позволяет вам получить состояние сети (wifi, 3g, 4g), также вы можете проверить, подключена ли сеть или нет.
Если интернет отсутствует, запрос HTTP будет терпеть неудачу, и вы получите какое-то исключение, которое вам придется обрабатывать