XMPP聊天应用程序被拒绝使用VoIP服务作为背景模式

我已经做了一个XMPP聊天应用程序,我使用Voip服务来获取VoIP密钥,以便在后台接收聊天消息。 function一切正常,但应用程序商店拒绝了应用程序,如下所示:

2.16:多任务应用程序可能只使用后台服务达到预期目的:VoIP,audio播放,位置,任务完成,本地通知等。

2.16我们发现您的应用程序使用后台模式,但不包括需要该模式持久运行的function。 这种行为不符合App Store评论指南。

我们注意到您的应用程序在Info.plist的UIBackgroundModes项中声明了对VoIP的支持,但不提供任何IP语音服务。

我们认识到,VoIP可以提供许多应用程序function要使用的“保持活跃”function。 然而,以这种方式使用VoIP不是VoIP的预期目的,正如“iOS应用程序编程指南”中所指出的那样:“因特网协议语音(VoIP)应用程序允许用户使用Internet连接进行电话呼叫而不是设备的手机服务“。

添加VoIPfunction或从UIBackgroundModes键删除“VoIP”设置是适当的。对于离散的代码级问题,您可能希望咨询Apple开发者技术支持。 当DTS工程师跟进你时,请准备好提供:

  • 你的拒绝问题的完整细节
  • 截图
  • 重现问题的步骤
  • 符号化的崩溃日志 – 如果您的问题导致崩溃日志

如果您在重现已报告的问题时遇到困难,请尝试按https://developer.apple.com/library/ios/qa/qa1764/ TechnicalQ&A QA1764:如何重现仅适用于应用程序审查的崩溃或错误用户正在看到。

我需要从某人那里得到一个有力的答案,这样我才能使这个function正常工作,同时也能被批准用于App Store。

我认为拒绝发生在iOS 7发布之后。我需要iOS 7发布后上传XMPP聊天应用程序的人的帮助

您不能只添加voip标志并获得Appstore的批准,您需要实现VOIPfunction,否则您将被拒绝。 Appstore中的大多数XMPP应用程序不能在后台工作,但其中一些实现了通过Jingle的 VOIP并获得了voip标志的批准。

另一方面,如果您的应用程序粘贴到您的XMPP服务器上,则可以修改服务器行为 – 即使他断开连接,仍保持用户会话在线,pipe理收到的消息并通过Apple推送通知通知用户。 然后用户启动应用程序,恢复前一个会话,并获取所有存储的消息 这种行为还没有标准化,但还有一些正在进行的工作规范 。

您不能在您的应用中使用VoIP,因为它提供了一些很酷的背景function。 当应用程序被终止时,您可以接收消息的唯一方法是通过APNS推送通知,这需要在服务器上相应地configuration,并在应用程序再次启动时重新创build连接。 当应用程序处于后台时,您可以显示本地通知,但是当与XMPP服务器的连接处于脱机状态时,您必须发送推送通知。

尽pipe这里面临的挑战是在发送推送通知时获取邮件的递送收据。 那如果你正在处理收货,这将是一个挑战。