如何在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服务器时,服务器会将所有缓存的消息发送到客户端发送这些消息。

这很复杂,因为您的服务器确实需要进行一些更改。

+0

感谢给我答案我会尝试使用APNS推送通知。 –

+0

@DivyaPatel,我想知道为什么你需要使用xmpp?这是一个相当繁重的协议,如果你的应用专注于即时聊天,我认为很难在没有服务器的情况下改变行为。如果只是为了某种通知,苹果推送可能是一种选择。 – user3349433

+0

你是对的这是繁重的协议,但它是客户的要求。 :)另外我需要群聊,这就是为什么我使用xmpp。 –