【发布时间】:2015-04-25 05:42:41
【问题描述】:
我使用 Pubnub 框架创建了一个聊天应用程序。为此,我启用了单个频道的存在,并且所有用户都订阅了该频道。但是当我关闭应用程序(后台模式)时,pubnub 会给我该用户的超时声明。
但我想在用户终止应用程序之前显示用户在线。
我们将如何管理这种情况?
请指导。
【问题讨论】:
我使用 Pubnub 框架创建了一个聊天应用程序。为此,我启用了单个频道的存在,并且所有用户都订阅了该频道。但是当我关闭应用程序(后台模式)时,pubnub 会给我该用户的超时声明。
但我想在用户终止应用程序之前显示用户在线。
我们将如何管理这种情况?
请指导。
【问题讨论】:
我从未使用过 PubNub,但查看它的文档,我发现您可能需要做几件事:
1) 您需要让您的 PubNub 委托为方法 shouldRunClientInBackground 返回“YES”。
或
2) 您可以修改应用程序的 plist 文件,使其需要在后台运行。 This Apple Technote for background tasks 告诉你怎么做。
【讨论】:
您可以使用后台应用刷新并发出存在心跳请求。
这里简单解释一下Background App Refresh
请随意谷歌搜索更多结果
您被限制在大约 30 秒内完成所有工作(如果您有有效的连接,时间应该足够了)。您还可以控制后台获取的间隔。看起来你必须自己实现其中的一些,但它应该在 iOS 7 和 iOS 8 上是可行的。
【讨论】: