美文网首页
iOS应用之间的跳转与数据传递

iOS应用之间的跳转与数据传递

作者: 黑暗森林的歌者 | 来源:发表于2016-07-09 16:50 被阅读67次

在开发的时候遇到需要从其他APP调用自己的APP的需求,比如从Safari中打开APP,并且传递一些信息的需要

1、首先设置自己的URL types

打开项目中的工程文件,打开info选项,在下面的URL types中添加自己APP的Identifier,并且自定义一个自己的scheme,如图:

Paste_Image.png

举个例子,设定自己的APP的scheme为 myApp;

2、其他应用的调用

其他的用如果想要调起自己的APP,需要执行如下类似代码

NSString *paramStr = [NSString stringWithFormat:@"myApp://userInfo....."]; 
NSURL *url = [NSURL URLWithString:[paramStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
 [[UIApplication sharedApplication] openURL:url];

myAPP://后面就是需要传进来的值

3、接受被调起并且获取传来的值

在appdelegate中添加如下方法

-(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
     NSString *tmpUrl = [url absoluteString];
   
    return YES;
}

url就是 myApp后面的 userInfo.....

sourceApplication主动调起的应用的bundle id

在自己的应用中设定对应的参数来接收数据。需要传递的数据信息可以拼接成url的字符串

相关文章

网友评论

      本文标题:iOS应用之间的跳转与数据传递

      本文链接:https://www.haomeiwen.com/subject/ggorjttx.html