可以在不同的应用程序之间使用NSNotificationCenter进行通信吗?

时间:2011-12-15 21:58:32

标签: ios nsnotificationcenter

应用可以让NSNotificationCenter内部使用不同的部分进行相互通信,但这可以扩展,以便不同的应用可以使用它进行通信吗?

编辑:对于iOS与OSX的混淆感到抱歉。我只添加了iOS标签,我不知道如何/为什么/为什么添加了objective-c标签,这不是我。

3 个答案:

答案 0 :(得分:2)

很抱歉找到一个简短的答案,但在这种情况下,这就是它的全部 - 不,他们不能。

您可以注册处理URL类型,然后以这种方式启动传递一些数据。

答案 1 :(得分:0)

我认为您需要一台服务器来处理两个应用之间的通信。

假设您希望应用A和应用B相互通信。让两个应用程序定期向服务器S报告其“位置”。此外,两个应用程序都应该收听S。

不确定在后台运行的应用程序如何有效地侦听来自服务器的数据。

可能有助于了解iOS即时消息应用的工作原理。也许有一些开源项目可以帮助解决这个问题(并且可以根据您的需求进行调整)。

答案 2 :(得分:0)

Nick's answer当然是正确的,但如果您正在寻找可在进程之间工作的NSNotificationCenter的替代方法,则可以尝试在CoreFoundation.framework中使用Darwin通知机制。如果您使用达尔文通知中心,则此过程在进程之间有效。

See example here on Stack Overflow

... and another one with an example callback

请注意,我没有在iTunes App Store中的任何应用中使用此功能。 These APIs are not private,但Apple肯定可以拒绝使用他们喜欢的任何内容,即使它不是私有API。我只是提供此解决方案作为可能性,无法预测App Store的可接受性,甚至不知道您(或其他人阅读此页面)是否需要将他们的应用程序提交到App Store。

I'll also link to this similar question (currently unsolved)