iOS 两个应用之间的交互

来源:互联网 发布:曲面细分算法 编辑:程序博客网 时间:2024/06/10 14:23

       在开发iOS项目的时候,有时候需要用到两个项目之间的交互,就比如调用微信和支付宝支付,但是微信和支付宝封装的SDK已经做好了所有的工作,我们直接集成SDK调用就可以了,那么如果我们自己设计两个项目之间的交互怎么实现呢。

      在开发之前先写一个dome,创建一个Project1,再创建一个Project2。

      在Project1里面添加一个点击事件,点击事件里添加代码 [[UIApplicationsharedApplication]openURL:[NSURLURLWithString:@“openProject2]]; //如果需要传递链接数据一般是这样写@“openProject2://......

   在Project2项目里,设置 Project2 -》 info -》 URL Types -》 URL Schemes 在URL Schemes 里面输入 openProject2(这个名称可以自定义,但必须保持两个项目统一) 运行两个项目,点击Project1的点击事件,就可以打开Project2项目了。

Project2项目有两种状态,一种是没有启动,一种是启动之后在后台运行。没有启动时会进 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{}方法,这个大家应该都知道,启动之后会进

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString*,id> *)options{}方法,在这个方法里添加判断 

if ([[urlscheme]isEqualToString:@"openProject2"]) {

     在这里面可以实现,打开应用之后需要进行的操作

     NSString *urlStr = [url absoluteString]; 

     urlStr就是接收到的完整链接,开发者可以用这个链接传递数据


- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{} 这个方法iOS9 之后禁用,但是现在仍可以用,建议和上面的方法一起写入程序中。


  


0 0
原创粉丝点击