在XMPP中以后台模式工作

我正在使用XMPP。 我想要在后台模式下获得通知。 而且我也执行这个东西,

- (void)xmppStream:(XMPPStream *)sender socketWillConnect:(GCDAsyncSocket *)socket { // Tell the socket to stay around if the app goes to the background (only works on apps with the VoIP background flag set) [socket performBlock:^{ [socket enableBackgroundingOnSocket]; }]; } 

在我的代码中,我设置的应用程序文件的背景模式的VOIP标志。 在这种模式下,我的应用程序可以完全在后台运行。 但苹果拒绝这种方式。

所以。 我认为其他方式是APNS(推送通知),但在我的应用程序巨大的聊天用户,然后如何处理使用推送通知的消息?

还有一件事我可以设置沉默的audio文件播放后台模式,并设置后台模式工作? 这样从苹果方面的任何问题或regection问题?

所以,对于这个问题给我一些适当的想法和build议。

感谢x提前。

还有一件事我可以设置沉默的audio文件播放后台模式,并设置后台模式工作? 这样从苹果方面的任何问题或拒绝问题?

这样苹果拒绝应用程序。

要通知使用关于收到的消息,你必须使用本地通知的背景和应用程序的前台状态,并使用推送通知没有运行状态的应用程序。

要达到您的目的,使用任何背景模式都不是解决scheme。

如何使用推送通知来处理消息?

您需要检查用户是否连接到XMPP服务器。 如果用户连接到XMPP,则通过XMPP消息传递,如果用户没有连接到XMPP,则发送推送通知,以帮助用户在线显示并接收消息。

还有一件事我可以设置沉默的audio文件播放后台模式,并设置后台模式工作? 这样从苹果方面的任何问题或拒绝问题?

是的苹果会拒绝应用程序(意图欺骗苹果)

当你的应用程序背景/杀,当时发送web服务,可以告诉服务器 – 你是离线。

然后服务器可以发送你推送通知所有的聊天内容。