两个应用程序间的通信
是否可以在两个不同的应用程序之间进行通信,一个在后台运行,另一个在前台运行? 如果是,任何人都可以build议如何?
是iPhone可以在两个应用程序之间进行通信,但仅限于less数情况。
-
可能有些应用程序需要根据某些事件(如电话呼叫等)发送到后台。在这种情况下,您将必须configurationaudio会话对象(基于Voip的应用程序)并相应地发送通知。
-
前面的示例只是在应用程序之间进行交互,而且灵活性非常低(在某些重要的内置事件中将应用程序发送到后台)。另一种方式是通过URL Schemes,苹果具有某些内置function并支持某些应用程序,如邮件.tel等,但其中的一个应用程序将前来。
就像你可以拨打一个电话号码一样
NSString *phURL= [NSString stringWithFormat:@"tel:%@", [NSString StringWithString:@"1-800-555-1212"]]; NSURL *phoneURL = [NSURL URLWithString:phURL]; [[UIApplication sharedApplication] openURL:phoneURL]];
顺便说一句,如果你需要实现一个自定义URL Schemes ..有乐趣。
- 另一种方式是通过UIDocumentInteractionController ,它提供了应用程序间的支持,以在特定的文件之间进行交互(沙箱环境禁止一个完整的访问,甚至访问可以修改其他应用程序的数据)。就像它可以用来预览邮件应用程序中的文件或下载附件。但是你不能修改他们的其他应用程序,当然你可以复制它并修改它为你的应用程序。
我不认为这正是你想要的,但它肯定会让你在应用程序之间进行交互。
它只是使用URLscheme来激活一个命令,并在另一个应用程序中打开。 只要尽量避免使用苹果默认为您自己的应用程序。