一个应用程序可以调用另一个然后返回结果?

时间:2012-04-21 18:58:47

标签: iphone ios ipad interop

我知道可以使用openURL方法在应用内启动另一个应用。如果该应用可以打开该URL,也可以使用canHandleURL进行检查。

但是还有办法调用应用程序并让它进行计算然后返回结果吗?

2 个答案:

答案 0 :(得分:4)

看看here(示例如何将文本发送到被叫应用程序)

在你的情况下:假设你有2个应用程序(app1和app2) 和2个网址方案(protocolThatCallsApp1://protocolThatCallsApp2://

在您的app1中

,您使用protocolThatCallsApp2://调用app2 然后在您的app2中进行计算并使用protocolThatCallsApp1://+yourCalculations调用app1并进行必要的解析以在app1中获得结果

答案 1 :(得分:2)

第二个应用应该使用相同的机制(openURL)来调用第一个应用。

Facebook sdk使用此方法实现Single Sign-On

  

如果应用程序在支持多任务处理的iOS版本中运行,并且设备安装了版本为3.2.3或更高版本的Facebook应用程序,则SDK会尝试在Facebook应用程序中打开授权对话框。用户授予或拒绝授权后, Facebook应用重定向回调用应用,传递授权令牌,过期以及Facebook OAuth服务器可能返回的任何其他参数。