gpt4 book ai didi

ios - 后台PUBNUB + IOS如何管理在线/离线/离开状态?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:59:44 25 4
gpt4 key购买 nike

我们想在 iOS 中使用 Pubnub 框架实现在线/离线,但应用程序在后台运行超过 10 分钟。我们试图通过启用定位功能来实现这一点,并且它工作正常。但是客户端不想为此目的启用位置服务。那么我们将如何设法使后台运行启用无限呢? (问题 1)

如果我们想在我们的代码中添加在线/离线/离开状态

我们应该展示的地方,在线:当用户打开应用时离线:当用户从后台关闭应用或删除应用时离开:当用户点击主页按钮并且应用程序处于后台时。

我们将如何实现这一点(特别是外出和离线状态)?(QUE 2)

还有其他管理在线/离线/离开的方法吗? (没有 Pubnub)(QUE 3)如果是,请描述方式。

我们将如何使用网络服务管理在线/离线/离开?我们什么时候调用那个网络服务? (问题 4)

我们使用的是将近 3-4 年的基本代码。那么我们是否应该在 plist 中添加任何其他参数以使应用程序在后台运行更长时间? (问题 5)

请指导我们。

最佳答案

PubNub Presence ,您可以通过最佳方式在您的应用中提供此功能,但由于 iOS 处理应用进入后台的方式,您可能有机会也可能没有机会更新此状态(取决于应用的运行配置方式)。

但很简单,by enabling Presence for your PubNub keys ,当客户subscribes to a channel , join 事件被发送到所有其他正在收听该 channel 上存在的订阅者。

当应用程序进入后台时,如果您有机会这样做,您可以 call unsubscribe on all the channels客户端已订阅,leave 事件将被发送到收听存在事件的那个/那些 channel 的所有订阅者。

如果应用程序被杀死或进入后台,您没有机会调用取消订阅,当应用程序离线/断开连接的时间超过配置的心跳周期,然后一个timeout(相当于一个leave事件)将被发送给所有监听存在事件的订阅者。

heartbeat defaults to 5 minutes but you can configure this to a lower setting like 60 seconds (或对于需要此但绝不会低于 15 秒的用例而言更短)。

如果您希望您的服务器监听 Presence 事件,那么您将需要使用我们的 Presence Webhooks(文档即将推出)。请看this StackOverflow thread about how to implement PubNub Presence Webhooks and how to get your PubNub keys configured to use them .

关于ios - 后台PUBNUB + IOS如何管理在线/离线/离开状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30521730/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com