我想找出一种方法来做一个AIR for iOS应用程序的互联网连接检查。在此之前,我使用了一个URLMonitor
(针对我的判断),每30秒检查一次Google。我不喜欢把这个负载放到谷歌上,他们也没有;今天早上,我们的网络被简单地从测试应用程序中标记为可能的DDoS攻击者。所以我不得不禁用这种类型的检查并继续前进。检测互联网连接
我曾考虑过使用Adobe的NetworkInfo
ANE,但这在确定互联网连接方面存在其自身问题。我能想到的唯一方法是检查接口“en0”和“pdpxx”(分别对应于WiFi和Cellular接口)并检查它们的IP以确保它们不在192.168.xx,10.10.xx中,或127.0.xx范围。但是,我不完全确定这些是唯一的静态路由器/本地主机IP,并且总有可能网络接口名称将在未来发生变化,这将导致此显示器无用。 IPv6的问题也可能引发这种方法的问题。
是否有另一种方法来检查用户是否连接到互联网?我搜索了多次,似乎这是唯一的两种方法来检查。如果是这样的话,最好的检查方法是什么?
一个简单的方法是轮询实际的服务器。当轮询请求失败时,请设置一个标志来指示用户处于脱机状态。脱机时,使用缓存数据**和**以较低的频率(即:每隔30秒)轮询服务器。当轮询请求成功时,您可以以更快的频率恢复轮询并使用实时数据。 – 2013-04-28 18:46:52