检测iPhone是否从wifi漫游到3G,反之亦然

时间:2011-09-13 00:52:44

标签: ios voip 3g

G'day Guys,

我一直在使用具有可达性状态回调的可达性API来确定应用程序是通过3G还是wifi连接。它是一个应用程序,充当现有硬件的语音扩展,因此我们使用VoIP API在后台运行并接受呼叫等。

除了使用可达性状态回调以确定您是否可以访问特定的IP端点之外,还有其他明确的方法吗?我可以使用ASIHTTPRequest然后检查它是否超时,但从长远来看这可能会给我带来潜在的问题。

我不是在寻找一个程序化的答案,而是其他开发人员如果你有持久连接,如何在后台管理漫游之间的任何见解。基本上,如果设备漫游到3G,我需要销毁设备上的会话,如果它漫游回Wifi,我需要重新创建会话。

欢迎任何反馈或建议。

1 个答案:

答案 0 :(得分:0)

Reachability API将向您的应用提供连接更改通知,以便您可以了解连接何时从WWAN更改为wifi。不幸的是,它不会告诉您是否已从Edge更改为3G或LTE。 Reachability API还具有测试特定主机的可达性的方法。因此,在您的应用程序中,您可以侦听连接方法已更改的通知,然后确定更改测试可达性到目标主机的时间,并在此时决定是重建会话还是保持原样。