iOS应用在后台时是否可以进行本地提醒

Alan
  • 88

一个iOS应用,可以与服务器互相收发消息,针对iOS应用的状态,存在以下三种情况:

1)若iOS应用为活动状态,刚与服务器保持一个长连接,客户端与服务器通过此连接收发消息。
2)若iOS应用为退出状态,长连接被断开,服务器向客户端发消息则通过APNS推送消息实现。
3)若iOS应用刚刚切至后台,还没有关闭,发现长连接并没有断开,服务器通过长连接向客户端发送消息还是能发出去,但是iOS应用只有重新切至前台时才能收到消息。

针对第三种情况,有一个疑问:

iOS应用刚切至后台时,连接还保持着,此时客户端在后台是否可以收服务器来的消息,然后用本地通知来通知用户?如果可以的话应该怎么做?还是说一旦切至后台,就必须通过APNS来通知用户?

回复
阅读 6k
3 个回答

LocalNotification在应用挂到后台以后是仍然可以运行的,但一段时间以后,系统仍然会终止它。
所以建议你把应用挂到后台,主动断开长连接。
如果一定要用后台运行,可以参考这篇文章 http://tapbots.com/blog/pastebot/past... 他们在后台常年播放一个声音来保持应用存活。我个人认为这个方案比较恶心。。。不推荐使用

寂寞哀愁
  • 2
新手上路,请多包涵

刚好我最近遇到一样的情况,我的处理是主动去断掉长连接

第三种情况的时候,客户端自己给自己发通知呢

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏