iOSURLSchemes的定义和使用 ios10 url schemes

iPhone上URLSchemes的作用为应用程序提供了一个其他应用程序或者safari可以启动他的方法.
首先,看下如何在自己的应用程序中打开其它的应用程序:
1.打开GoogleMap
// Createyour query ...
NSString*searchQuery = @"1 Infinite Loop, Cupertino, CA95014";
// Becareful to always URL encode things like spaces and other symbolsthat aren't URL friendly
searchQuery= [addressTextstringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
// Nowcreate the URL string ...
NSString*urlString = [NSStringstringWithFormat:@"http://maps.google.com/maps?q=%@",searchQuery];
// An thefinal magic ... openURL!
[[UIApplication sharedApplication] openURL:[NSURLURLWithString:urlText]];

2.打开Mail
[[UIApplication sharedApplication] openURL:[NSURLURLWithString:@"mailto://info@iphonedevelopertips.com"]]

3.打开电话
[[UIApplication sharedApplication] openURL:[NSURLURLWithString:@"tel://8004664411"]];

4.打开SMS
[[UIApplication sharedApplication] openURL:[NSURLURLWithString:@"sms:55555"]];

5.打开AppStore
NSURL*appStoreUrl = [NSURLURLWithString:@"http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=291586600&mt=8"];
[[UIApplication sharedApplication] openURL:appStoreUrl];

其次,我们看下如何让其它应用程序,打开我们自己的程序
原理很简单,首先Schemes是在你的应用程序的info.plist里面定义的,在安装应用程序后.应用程序可以解析你的info.plist,如果检测到CFBundleURLTypes,会将相应Scheme注册到系统里面。如果有应用程序通过[[UIApplicationsharedApplication]openURL:url]打开了safari或者直接在safari里面输入URL.系统会检测URL,然后对照已经注册的scheme来启动相应的应用程序.比较常见的scheme有http,mailto,tel,sms.当然你可以自己定义一个.
被启动的应用程序会调用

-(BOOL)application:(UIApplication*) applicationhandleOpenURL:(NSURL *)URL (4.2以前的iOS)
或者
-(BOOL)application:(UIApplication *)applicationopenURL:(NSURL *)url sourceApplication:(NSString*)sourceApplication annotation:(id)annotation (4.2以后的iOS)

这个函数返回的是bool值,他的返回值指明了是否根据URL的内容是否合法来打开指定的应用程序.当你的应用程序定义了一个scheme可以让别人打开的话,并且需要接受一些参数作为启动参数的时候.这是非常危险的.因此需要对接受到的URL进行检查,如果符合你的要求,那就打开应用程序,如果不符合,可以拒绝打开!
要实现这么一个功能,具体步骤如下:
(1)在info.plist里面,添加 CFBundleURLTypes,然后在生成的URLScheme输入你自己的定义的Scheme
(2)在info.plist 里面添加CFBundleURLName;他是你的scheme的一个别名.具体如下
  

爱华网本文地址 » http://www.aihuau.com/a/25101015/281871.html

更多阅读

TrueCrypt的安装和使用 truecrypt

TrueCrypt的安装和使用——简介加密工具的使用。作者在工作中由于项目保密的需要,要加密代码和文档,这里用到了TrueCrypt。作者从头讲解TrueCrypt的使用。在生活中我们也有很多东西需要进行加密。

各种精油的功效和使用方法 红糖姜水的功效与作用

各种精油的功效和使用方法——简介精油分单方和复方 我就举例几种年轻女性常用的单方精油各种精油的功效和使用方法——方法/步骤各种精油的功效和使用方法 1、 ☆.玫瑰:抗皱保湿,祛除细纹,补充雌激素,调节内分泌,对月经紊乱,经痛,性冷感,

介绍一下罗盘的原理和使用方法:

介绍一下罗盘的原理和使用方法:文:李宗哲老师。  罗盘又称罗经,取包罗万象、经纬天地之意义。  罗盘一般由地盘和天盘组成。罗

太阳能热水器的发展和使用 太阳能热水器怎么使用

课题:太阳能热水器的发展和使用简介  太阳能热水器把太阳光能转化为热能,将水从低温度加热到高温度,以满足人们在生活、生产中的热水使用。太阳能热水器是由全玻璃真空集热管、储水箱、支架及相关附件组成,把太阳能转换成热能主要

声明:《iOSURLSchemes的定义和使用 ios10 url schemes》为网友金牌大叔分享!如侵犯到您的合法权益请联系我们删除