什么是URL Scheme?
URL Scheme类似于网页的链接。例如:weixin:
//定义了外部应用打开微信的一个入口,weixin
就是Scheme:表示的是一个 URL 中的一个位置——最初始的位置。而weixin://dl/moments(朋友圈)可以打开微信朋友圈功能模块。
定义应用自己的URL Scheme:
方法一:选中项目-->info-->URL Types-->点击加号按钮添加-->在URL Scheme后添加自己应用的URL Scheme名字。
方法二:在info.plist文件中添加:(注:只需要名字,不要在后面追加 ://)
接下来就可以从 Safari 中调用自定义 URL Scheme来开启应用了。格式为自定义 URL Scheme://+参数
当应用程序通过URL Scheme的方式来启动应用时,首先会调用程序AppDelegate.m中的- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation方法,我们可以根据url来获取外部传入的参数,接下来再去执行- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions。
使用代码来打开另一个应用:
只需要两行代码即可搞定。
NSString *customURL = @"myApp://";
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:customURL]];