iOS中OpenURL的使用

来源:互联网 发布:在淘宝里做代销怎么做 编辑:程序博客网 时间:2024/06/05 00:45

openURL的使用方法:

  1. [[UIApplication sharedApplication] openURL:[NSURL URLWithString:appString]];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:appString]];


系统自带的URL Scheme:

  1. Map http://maps.google.com/maps?q=Shanghai
  2. Email mailto://myname@google.com
  3. Tel tel://10086
  4. Msg sms://10086
Map http://maps.google.com/maps?q=Shanghai

Email mailto://myname@google.com 

Tel tel://10086 

Msg sms://10086


App自定义URL Scheme:

自定义添加URL Scheme有两种方式,主要还是推荐第一种


通过targets中的info目录的URLTayes配置


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



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



注意: 

(1)在调用scheme url时,需要在后面加上 "://"格式

(2)普通app使用[UIApplication sharedApplication]; Extension中使用NSExtensionContext


 [self.extensionContext openURL:[NSURL URLWithString:@"appextension://123"]                 completionHandler:^(BOOL success) {                     NSLog(@"open url result:%d",success);                 }];


通过.plist文件添加

1、首先在*-Info.plist中添加一行,选择URL types,效果如下图所示:

ios_url_scheme_001.png

2、在展开的Item 0中填写URL identifier,这个用来唯一标识用户自定义的URL Scheme,推荐使用域名的反转形式,如:com.devzeng.demo

ios_url_scheme_002.png

3、在Item 0中添加新的一行,选择URL Schemes

ios_url_scheme_003.png

4、展开URL Schemes,在Item 0中输入自定义的Scheme的名称。在这里只需要输入自定义的Scheme的名称即可,不需要加上://,例如这里输入的是devzeng,那么对应的自定义的URL就是devzeng://,这里可以输入多个。

ios_url_scheme_004.png

5、最后一个完整的示例效果图:

ios_url_scheme_005.png


0 0