iOS voip app睡眠&可达性已经改变,我可以收到通知吗?

时间:2011-08-16 15:02:53

标签: objective-c ios cocoa-touch multitasking reachability

我正在为iOS构建一个voip应用程序,我正在处理后台工作。

到目前为止,我已经在应用程序休眠时通过iOS监听voip套接字,然后通过输入数据唤醒它。

我的问题是:
当可达性发生变化时(Wifi - > 3G,Wifi - >其他Wifi等)
并且应用程序被暂停,我可以获得一些通知以重新连接我的voip套接字吗?

感谢。

2 个答案:

答案 0 :(得分:2)

答案是肯定和否:

  • 注册Reachability网络更改通知。
  • 如果应用程序在连接其voip套接字(请参阅链接)时暂停后台,则uppon网络更改应用程序将在后台唤醒10秒钟。
  • 如果应用程序在未连接其voip套接字时进入后台暂停,则uppon网络更改应用程序将不会被唤醒。
  • 网络丢失和无连接后台的解决方案可能正在修复您可以在UIApplication上安排的Keep-Alive块中的连接。
  • 注意:在上述10秒内,您可能会要求执行后台任务以完成重新连接作业。

链接

答案 1 :(得分:1)

如果您有一个后台插槽,您可以订阅可访问性通知,它们将在后台启动时触发,以便您可以对可达性更改执行操作。如果您在点击后台时没有取消订阅通知,那么订阅通知的对象是您的应用代表时,您仍会获得通知。