Java BroadcastReceiver for android.net.conn.CONNECTIVITY\u更改是否实际检查互联网连接?
我使用了一个名为android.net.conn.CONNECTIVITY\u CHANGE的Java BroadcastReceiver for android.net.conn.CONNECTIVITY\u更改是否实际检查互联网连接?,java,android,connection,broadcastreceiver,emulation,Java,Android,Connection,Broadcastreceiver,Emulation,我使用了一个名为android.net.conn.CONNECTIVITY\u CHANGE的BroadcastReceiver用于IntentFilter的 CASE | MO_DATA | MO_WIFI | PC_INTER | RESP ---- | ------- | ------- | -------- | ---- 1 | ON | ON | ON | ON 2 | ON | OFF | ON | ON 3
BroadcastReceiver
用于IntentFilter
的
CASE | MO_DATA | MO_WIFI | PC_INTER | RESP
---- | ------- | ------- | -------- | ----
1 | ON | ON | ON | ON
2 | ON | OFF | ON | ON
3 | OFF | ON | ON | ON
4 | OFF | OFF | ON | OFF
5 | ON | ON | OFF | ON
6 | ON | OFF | OFF | ON
7 | OFF | ON | OFF | ON
8 | OFF | OFF | OFF | OFF
在上述第5、6和7种情况下,即使PC中没有互联网连接,响应也会显示为打开,这只是因为移动数据/wifi或两者都已打开,并且未反映互联网不可用的实际状态
有什么办法可以解决这个问题吗?检查您是否有可用的internet连接的一种方法是向Google.com发出请求,如果您得到的响应为200,则您有可用的internet连接,否则就没有
如果您将使用CONNECTIVITY MANAGER,则无法确定连接的网络是否有工作的internet,因为有时我们使用WiFi连接,但它不工作。希望这对您有所帮助。检查您是否有可用的internet连接的一种方法是向Google.com发出请求,如果您得到的响应为200,则您有可用的internet连接,否则就没有
如果您将使用CONNECTIVITY MANAGER,则无法确定连接的网络是否有工作的internet,因为有时我们使用WiFi连接,但它不工作。希望这将对您有所帮助。BroadcastReceiver with intent filter android.net.conn.CONNECTIVITY\u当网络发生变化时,会触发变化。网络已连接-已断开连接,反之亦然BroadcastReceiver with intent filter android.net.conn.CONNECTIVITY\u当网络发生更改时,会触发更改。网络连接-断开连接或反之亦然您所说的是一个非常合理的解决方案,但如何使用HTTP连接检查响应代码?有办法吗?获得这样一个可用的库会非常有帮助。看看这个链接你说的是一个非常合理的解决方案,但是如何使用HTTP连接检查响应代码?有办法吗?这将是非常有帮助的,得到这样一个可用的图书馆。看看这个链接