如何在ios 10的后台运行xmpp?
问题描述:
我在iOS中创建了聊天应用程序,但是在ios 10 xmpp中没有在后台工作。如何在ios 10的后台运行xmpp?
为此,我找到了一个用于在后台运行xmpp的解决方案pushkit,但我不明白如何实施xmpp +推送工具包。
因此,任何人都有关于xmpp + push kit或ios 10 xmpp在后台运行的想法或代码,请帮助我。
谢谢。
答
在iOS 10之前,我们有一个voip套接字,即使在后台收到一些数据包,它也会在后台唤醒您的应用。但是从iOS 10开始,我们不会获得CPU时间,所以pushkit将是最后的选择。
如果你想使用pushkit,你必须有意义,它只是一种唤醒你的方式,当你被暂停或甚至你被杀死。当你想发送一条消息到远程的时候,你需要发送一个http推送消息给APNS,并且消息的有效载荷将被传递(如果够了,你甚至可以跳过你的xmpp部分)。
如果您坚持使用xmpp通信,您可能需要在发送APNS消息后存储消息,并且当远程应用程序被唤醒并连接到xmpp服务器时,服务器会将所有缓存的消息发送到客户端发送这些消息。
这很复杂,因为您的服务器确实需要进行一些更改。
感谢给我答案我会尝试使用APNS推送通知。 –
@DivyaPatel,我想知道为什么你需要使用xmpp?这是一个相当繁重的协议,如果你的应用专注于即时聊天,我认为很难在没有服务器的情况下改变行为。如果只是为了某种通知,苹果推送可能是一种选择。 – user3349433
你是对的这是繁重的协议,但它是客户的要求。 :)另外我需要群聊,这就是为什么我使用xmpp。 –