35

What's the difference between ACCESS_NETWORK_STATE and INTERNET?

If I use INTERNET, is it necessary to use ACCESS_NETWORK_STATE?

In other words, can I use INTERNET without using ACCESS_NETWORK_STATE?

4

3 回答 3

44

文档中

ACCESS_NETWORK_STATE

允许应用程序访问有关网络的信息

INTERNET

允许应用程序打开网络套接字。

简而言之,该INTERNET权限允许您使用互联网,而ACCESS_NETWORK_STATE只会为您提供有关网络的信息,例如您是否已连接到网络。

您可以使用其中一个而不需要另一个。如果您在尝试使用 Internet 之前没有检查您是否拥有有效的网络连接,那么您的 HTTP 请求将会失败。

于 2013-10-28T18:12:02.283 回答
11
android.permission.INTERNET

如果您只想使用互联网(连接到网络服务或在 webView 上显示网页)就足够了。

android.permission.ACCESS_NETWORK_STATE

在使用互联网之前查询网络状态的状态是“很高兴”。

于 2013-10-28T18:17:07.550 回答
3

INTERNET 允许您使用互联网

ACCESS_NETWORK_STATE 允许您获取网络状态 (wifi ,3g,4g) 您还可以检查网络是否已连接

如果没有互联网,HTTP 请求将失败,您将获得某种必须处理的异常

于 2013-10-28T18:11:53.580 回答