Xcode6 中URL Scheme的具体使用

原文地址:http://blog.csdn.net/mayerlucky/article/details/41441623

  1. 我们知道iOS没一个应用程序都有一个自己的沙盒,且沙盒和沙盒之间(即是应用与应用之间)是相互独立的。苹果要求每一个应用都只能限制在自身的沙盒中活动,杜绝应用在沙盒外的活动。当然越狱除外!

  2. 现在的问题是?很多时候我们都要由一个应用去跳转到另一个应用或者跳转到appStore去共享、分享、下载等。但是应用和应用之间又是这么绝缘。不过所幸的是苹果提供给我们一个非常好的方法:就是 URL Scheme

  3. 他就像一个地址,绑定url scheme 的应用就像是贴了一个独立logo的标签,通过访问应用的url scheme 我们就能跳转到对应的应用中。

说了这么多废话,下面我们开始配置url scheme 。(以Xcode6为基础,最后再说一下可能会遇到的错误)

1.首先打开工程进入tagets的info目录看到URL Tapes

这里写图片描述

  1. 我们点击+号添加 在url identifier 中填入格式:com.company.xxx 在url scheme 中填入(这个可以随便填入,不过尽量和你的app保持一致)比如我填入的是 hztcTestApp 那么在调用的时候实际上是 hztcTestApp:// 格式

这里写图片描述

3.Role里面选择none就可以了

4.此时把这个工程给运行一下,运行成功以后,这个url scheme 就已经注册到模拟器上了(同理,在真机上安装后就已经注册到真及设备上了)

5.然后我们可以通过另一个工程来进行测试。 测试你设备上存在不存在刚刚注册了 url scheme的应用 可以根据此代码调试

BOOL isOpened = NO;

isOpened = [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"hztcTestApp://"]];

if (isOpened) {

    NSLog(@"有此应用");//由此应用就直接打开    

}else{

    NSLog(@"没有此应用");//若无此应用我跳到了商店的QQ

    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://itunes.apple.com/cn/app/qq/id451108668?mt=12"]];

}

6.至此,差不多已经完成了。最后再说一下,可能会出现的问题 :(没有经过完全验证,不能100%肯定,还请见谅)

我认为在targets中的info目录有URLTayes的不要在.plist文件中添加这些 url identifier 和 url scheme 等 因为可能出现不了正确结果! 当然如果没有 在targets中的info目录有URLTayes 可以在.plist文件中进行配置

有兴趣深入了解的可以搜一下“iOS开发应用间的相互跳转”,或者看这边大神的博客已可以:http://www.jianshu.com/p/b5e8ef8c76a3

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值