url scheme 打开其它app 应用
来源:互联网 发布:淘宝网店面板怎么使用 编辑:程序博客网 时间:2024/05/13 21:45
URL Scheme的作用
我们都知道苹果手机中的APP都有一个沙盒,APP就是一个信息孤岛,相互是不可以进行通信的。但是iOS的APP可以注册自己的URL Scheme,URL Scheme是为方便app之间互相调用而设计的。我们可以通过系统的OpenURL来打开该app,并可以传递一些参数。
例如:你在Safari里输入www.alipay.com,就可以直接打开你的支付宝app,前提是你的手机装了支付宝。如果你没有装支付宝,应该显示的是支付宝下载界面,点击会跳到AppStore的支付宝下载界面。
URL Scheme必须能唯一标识一个APP,如果你设置的URL Scheme与别的APP的URL Scheme冲突时,你的APP不一定会被启动起来。因为当你的APP在安装的时候,系统里面已经注册了你的URL Scheme。
一般情况下,是会调用先安装的app。但是iOS的系统app的URL Scheme肯定是最高的。所以我们定义URL Scheme的时候,尽量避开系统app已经定义过的URL Scheme。
注册URL Scheme
1.在info.plist里添加URL types
每一个项目里面都会有一个info.plist配置文件。找到info.plist,右键选择Add Row,然后选择URL types。如图所示:
2.添加URL Schemes
添加完URL types,点击展开。右键选择Add Row,添加URL Schemes:
3.设置URL Schemes
设置URL Schemes为iOSDevTip
4.设置URL Identifier
URL Identifier是自定义的 URL scheme 的名字,一般采用反转域名的方法保证该名字的唯一性,比如 com.iOSStrongDemo.www
添加成功启动提示
为了方便测试,我们在AppDelegate里面添加一个UIAlertView,当app被成功打开时,会提出提示:
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL*)url{ // 接受传过来的参数 NSString *text = [[url host] stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"打开啦" message:text delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil]; [alertView show]; return YES;}
Safari启动自定义的URL Schemes APP
既然已经配置好URL Schemes,那么我们可以来款速测试一下,我们设置的URL Schemes是否有效。打开Safari,在地址栏里输入:iOSDevTip://
果然成功打开:
也可以在地址栏中输入:iOSDevTip://com.iOSStrongDemo.www。也是可以打开注册了URL Schemes的APP的。
通过另一个APP启动注册了URL Schemes的APP
NSString *url = @"iOSDevTip://";// NSString *url = @"iOSDevTip://com.iOSStrongDemo.www";if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:url]]){ [[UIApplication sharedApplication] openURL:[NSURL URLWithString:url]];}else{ NSLog(@"can not open URL scheme iOSDevTip");}
- url scheme 打开其它app 应用
- 通过URL Scheme打开Settings应用
- 通过URL Scheme打开Settings应用
- 通过URL Scheme打开Settings应用
- iOS:开放平台引用(一)--应用外打开app / respond to a custom URL scheme
- Swift - 打开第三方应用,并传递参数(附常用App的URL Scheme)
- Swift - 打开第三方应用,并传递参数(附常用App的URL Scheme)
- iOS 自定义 URL Scheme,点击url打开app
- 短信或者邮件链接打开 APP(URL Scheme)
- 利用URL Scheme打开APP并传递数据
- 【iOS开发】打开另一个APP(URL Scheme与openURL)
- 【iOS开发】打开另一个APP(URL Scheme与openURL)
- APP url scheme
- 利用URL Scheme打开指定应用的通知
- URL Scheme 打开系统设置
- APP内打开另一个APP(URL Scheme与openURL)【iOS开发】
- 在wap中启动 app(利用URL Scheme打开APP并传递数据 )
- IOS App自定义URL scheme
- 有15个数存放在一个数组中,输入一个数,要求用折半法找法找出该数是数组中第几个元素的值。如果该数不在数组中,则输出“无此数”。以15个数用赋初值的方法在程序中给出。要找的数用scanf函数输入。
- BEGIN_MESSAGE_MAP
- Andrew Ng机器学习(ML)入门学习笔记(三)
- HBase和Java API操作
- WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-
- url scheme 打开其它app 应用
- JAVA实现AES加密
- 配置音频会话
- linux自旋锁
- linux下 telnet命令使用
- SharePreferences用法
- js+ajax+php
- iOS_一些简单地功能代码
- 适用于中小企业服务器租用托管