【发布时间】:2019-05-14 13:57:51
【问题描述】:
所以基本上我在同一台设备上安装了两个 iOS 应用程序,它们需要通过相互发送数据来进行通信。我不想使用 URL 方案或通用链接,因为这两个会在 UI 中打开另一个应用程序,而不是在后台相互发送消息。目前,我有一个使用 unix 套接字连接的解决方案,方法是将一个应用程序绑定到特定端口并让另一个应用程序连接到它。这很好用,但我只是想知道苹果是否允许使用它。 请注意,这两个 iOS 应用程序并非来自同一个开发人员,因此在这种情况下,任何其他依赖于 App Group 的应用程序都无法正常工作。
Apple 会允许在这种情况下使用套接字吗? 编辑:其中一个应用程序在后台运行是有效的,所以后台执行不是问题
【问题讨论】:
-
知道的唯一方法是尝试通过 AppStore 获取它。在这种情况下,没有人知道 Apple 会或不会允许什么。
-
即使可以,您的应用也可能不会在后台运行。也许您可以使用共享域在您的应用程序之间传输信息?
-
仅供参考,如果收件人应用程序恰好在后台运行,这可能会起作用,但如果它被暂停或终止(即,显然没有附加到 Xcode 调试器)怎么办? Apple 对允许应用程序在后台执行的操作非常严格(这是一件好事,因为这可以防止应用程序在后台持续运行,从而耗尽我们的电池)。如果您为了进程间通信而保持应用程序处于活动状态,则可能会与 App Store Review Guidelines 的 2.5.4 发生冲突。
-
对不起,我忘了说我有正当理由为其中一个应用启用后台执行,所以一个应用将在后台运行