【发布时间】:2014-05-13 06:23:16
【问题描述】:
我正在研究一种服务器-客户端机制,其中我的客户端是运行任何版本的 android 的移动设备。我想通过我的服务器检查远程android客户端是否连接到互联网并且互联网正在运行。我知道在这种情况下没有直接的方法。 让android客户端每5分钟ping一次我的服务器会是最好的解决方案吗?或者还有其他我不知道的更有效的方法。 对此的任何帮助将不胜感激。
【问题讨论】:
标签: android
我正在研究一种服务器-客户端机制,其中我的客户端是运行任何版本的 android 的移动设备。我想通过我的服务器检查远程android客户端是否连接到互联网并且互联网正在运行。我知道在这种情况下没有直接的方法。 让android客户端每5分钟ping一次我的服务器会是最好的解决方案吗?或者还有其他我不知道的更有效的方法。 对此的任何帮助将不胜感激。
【问题讨论】:
标签: android
您可以将 Connectivity Manager 用作可以为您提供连接状态的广播。
因此,每当您想从服务器检查 Internet 的连接性时,您都可以使用该状态值来了解 Internet 连接状态。
如文档中所述 (connectivity-monitoring) -
只要连接详细信息发生更改,ConnectivityManager 就会广播CONNECTIVITY_ACTION ("android.net.conn.CONNECTIVITY_CHANGE") 操作。您可以在清单中注册广播接收器以侦听这些更改并相应地恢复(或暂停)您的后台更新。
<action android:name="android.net.conn.CONNECTIVITY_CHANGE"/>
【讨论】: