是否可以在两个不同的应用程序之间进行通信,一个在后台运行,另一个在前台运行?如果是的话,有人可以提出建议吗?
答案 0 :(得分:5)
是可以在iPhone中的两个应用程序之间进行通信,但仅限于少数情况。
根据某些事件(如电话等),可能会有应用程序需要发送到后台。在这种情况下,您必须配置音频会话对象(基于Voip的应用程序)并相应地发送通知。
前面的例子只是在灵活性极低的应用程序之间进行交互(在一些重要的内置事件中将应用程序发送到后台)。另一种方法是通过URL Schemes,apple有一些内置的功能和支持对于某些应用程序,例如mail.tel等,但其中一个应用程序将出现在前台。
就像您可以拨打电话号码一样,该电话号码是在应用程序中构建的: -
NSString *phURL= [NSString stringWithFormat:@"tel:%@", [NSString StringWithString:@"1-800-555-1212"]];
NSURL *phoneURL = [NSURL URLWithString:phURL];
[[UIApplication sharedApplication] openURL:phoneURL]];
顺便提一下,如果你需要实现一个Custom URL Schemes,那就很有趣了。
答案 1 :(得分:1)
我认为这不是你想要的,但它绝对允许你在应用程序之间进行交互。
它只是使用URL方案来激活命令并在另一个应用程序中打开。只是尽量避免在自己的应用程序中使用apple默认值。