我使用XMPP开发了一个聊天应用程序,当应用程序处于前台时工作正常,并且在后台3分钟后在后台运行3分钟后,在后台应用程序中没有收到消息,它会断开连接我也使用此xmppStream.enableBackgroundingOnSocket = YES;
但它的工作只有app在后台活着。使用VoIP它工作正常,但我的应用程序不支持VoIP,这可能会导致应用商店拒绝。
我想在背景中播放无声音乐以保持应用程序在后台运行,但我怀疑拒绝。我尝试使用UIBackgroundTaskIdentifier任务,但iOS仍然在3分钟内杀死应用程序。我尝试使用后台提取,但这并不能让应用程序保持活跃状态。
答案 0 :(得分:1)
如果没有PushNotification,您将无法实现此功能。
即使WhatsApp在应用程序未处于前台模式时也实现了发送消息的推送通知。
当消息的接收者不在前台时,您可以通过查看递送/读取滴答来检查它。
保持Socket Alive无法实现此功能,因为它会耗尽iPhone的电池。