你的位置:首页 > 操作系统

[操作系统]IOS 应用跳转 (IOS9白名单)


跳转到指定app的实现

IOS中应用的跳转是通过URL实现的,因此在实现应用跳转之前我们要设置一下对应的URL。

图一(寻找配置软件的URL)

图二(具体配置选项)

注意:

如果IOS版本为IOS9 我们需要为app设置白名单。

实现跳转的前提是有这个app,因此我们需要把被跳转的app先运行,即安装到模拟器中。

如图三(在info中添加)

 

效果图四

代码:

//// ViewController.m// X//// Created by ma c on 16/4/9.// Copyright © 2016年 bjsxt. All rights reserved.//#import "ViewController.h"@interface ViewController ()@property (weak, nonatomic) IBOutlet UIButton *button;@end@implementation ViewController- (IBAction)GoU:(id)sender {    //获取跳转app的URl  NSURL * url = [NSURL URLWithString:@"U://"];  //判断手机中是否安装了对应的app  if ([[UIApplication sharedApplication] canOpenURL:url]) {    //打开应用程序    [[UIApplication sharedApplication]openURL:url];  }}- (void)viewDidLoad {  [super viewDidLoad];}@end

为了证明实现的是app之间的跳转:另附两张app的故事板截图

X:图五

U:图六

 跳转到指定页面的实现

前提:我们想要从X跳转到U的朋友圈。

那么X的代码如下:

//// ViewController.m// X//// Created by ma c on 16/4/9.// Copyright © 2016年 bjsxt. All rights reserved.//#import "ViewController.h"@interface ViewController ()@property (weak, nonatomic) IBOutlet UIButton *button;@end@implementation ViewController- (IBAction)GoU:(id)sender {    //获取跳转app的URl  NSURL * url = [NSURL URLWithString:@"U://"];  //判断手机中是否安装了对应的app  if ([[UIApplication sharedApplication] canOpenURL:url]) {    //打开应用程序    [[UIApplication sharedApplication]openURL:url];  }}- (IBAction)GoFriend:(id)sender {  //获取跳转朋友圈的URl  NSURL * url = [NSURL URLWithString:@"U://friend"];  //判断手机中是否安装了对应的app  if ([[UIApplication sharedApplication] canOpenURL:url]) {    //打开朋友圈    [[UIApplication sharedApplication]openURL:url];  }}- (void)viewDidLoad {  [super viewDidLoad];}@end

 

我们不能仅仅对X进行设置更要对U进行设置。

对U的代码操作在Appdeledate中。

代码如下:

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options{    //将url转为字符串  NSString * urlString = url.absoluteString;  //判断是通过什么跳转过来的  if ([urlString containsString:@"friend"]) {    NSLog(@"在这里执行页面跳转即可。");  }  return YES;}

 

效果图七如下