ios-应用程序间跳转

在iphone中的应用程序跳转,首先有一个概念我们需要知道的是URL Scheme,应用程序其实是根据网址的形式去找到程序的。URL Scheme就是一个协议头。

还有就是在Windows下面,我们通过创建快捷方式,然后点击这个快捷方式,就可以打开应用程序

其实是因为我们安装了这个应用程序,这个应用程序是有相应的路径的,所以我们点击的时候系统也就知道去哪里去打开了

我们在ios中也可以给每一个应用程序注册一个标识符,只要程序运行过一次,系统就会知道这个标识符和这个应用程序直接的关系。

只要我们根据这个标识符就可以去打开另外一个程序了。在下面进行设置协议头一般是 名字:// 在下面我们不需要使用:// 系统会自动的帮我们去拼接

下面这里是在项目 -> target ->Info -> URL Types中进行设置


跳转的话,可以调用下面的代码进行跳转

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"weixin2://"] options:nil completionHandler:nil];
在ios9以前,我们一般都会加一个判断,但在ios9之后这个判断失效了

if([[UIApplication sharedApplication]canOpenURL:[NSURL URLWithString:@"weixin2://"]])
    {


    }
我们在控制台输出的信息是

如果是ios9及其以后想要实现跳转,我们需要去添加一个白名单,否则的话第三方平台在判断是否跳转的时候使用的canOpenURL会返回失败

白名单只是对canOpenURL这个方法受影响,如果我们不去加白名单去判断是否可以跳转的话,就有可能会发生URL Scheme劫持的问题。会泄漏信息

需要注意的是,如果是A要跳转到B,应该在B当中去设置URL Scheme





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值