下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、项目演示由于苹果的app都是在沙盒中,相互是不能访问数据的。但是苹果还是给 出了一个可以在app之间跳转的方法:URL Scheme。简单的说,URL Scheme 就是一个可以让app相互之间可以跳转的协议。每个 app的URL Scheme都是 不一样的,如果存在一样的 URL Scheme,那么系统就会响应先安装那个 app的 URL Scheme,因为后安装的app的URL Scheme被覆盖掉了,是不能被调用 的。URL Schemes的发展过程可以说就是iOS效率工具类App的发展过程。起初的苹果建立的Apple URL Schemes只是用于自用,里面只有邮件、电 话、iTune
2、s搜索、Youtube视频等一些内置服务的URL。个人认为URL Schemes第一次大火是在2011年末(如有异议欢迎指正),那个时期也是越狱的鼎盛时期,那个时期越狱后大家都会装的一个插件是SBSettings1。越狱的人都知道每当新系统发布的时候,等待新系统的越狱 发布是最撩人的,而这段时期那些不越狱就能做到某种越狱功能的应用经常一时间风头无两。2011 年 iOS 5 发布带来了通知中心,没过多久,出现了一大批使用 iOS 系 统设置的URL Schemes的App神奇地完成了接近SBSettings的功能它们可以让我们从通知中心直接跳转到某些App 的特定界面,比如 Twitter 的
3、发推界面。它们甚至还可以直接跳转到系统设置里的 Wi-Fi 选项。在这一批App 中,就有如今效率软件霸主之一 Launch Center Pro的前身Launch Centers但很快,这一批App 被苹果火速下架,原因是对通知中心的误用。模糊的解释让开发者们摸不到头脑,这种不满一直延续到 Launcher 在 iOS 8之后 的下架事件。总之,在这一批App 被下架之后,玩票的都离开了,只留下了一个LaunchCenter。作者似乎觉得URL Schemes大有可为,所以在不触碰红线(当时的红 线是一不许动通知中心,二不许调用系统设置的界面)的基础上继续发力,在几个月( 2012年 7 月
4、)之后推出了Launch Center Pro v1.0。另一个注意到iOS上的URL Schemes的作用的是Drafts的作者Greg Pierce不同于Launch Center Pro, Greg Pierce打造的是一个以输入文字为主的 效率应用,它以一个笔记本的面目示人,所以被媒体称为 Launch Center for text。两者大的区别在于先选动作还是先输入。Launch Center Pro的使用方法是:先打开动作,如果需要输入的话,你可以让它跳出来一个输入框,你来输入,输入完成后跳转到相应应用。 Drafts 则是先在笔记本里把东西输入了,然后再选择动作,跳转到相应应用
5、。好像没什么大不了的嘛 吗?这里至少有两个重要的区别:Drafts 中输入过的内容会储存在笔记本中以留作备份,而 Launch Center Pro 里的则是动作运行完了就没了。 Drafts 中输入过的内容可以通过URL Schemes进行多次使用或一次性发给多个应用或服务,而Launch Center Pro只能将输入内容发送到一个服务或应用。即除了剪切版外,Launch Center Pro没有其它变量的概念。第三个区别不太重要:Launch Center Pro里的输入框和Drafts的笔 记本界面来比较很明显不是一个好的写作环境。细节上的区别还有很多,两者适用的范围随着各自的发展扩大
6、,因此重合的那部分功能也愈发的不起眼。Launch Center Pro和Drafts从那以后成为效率类应用中的双雄,不断提出更多 更灵活使用iOS上URL Schemes的办法。比如Launch Center Pro提出了 List的概念,将列表的想法融入到了 URL Schemes中,列表的每一项可以是简单的字符,又可以是一串新的复杂的 URL 。使用列表可以让我们每次的输入变为更轻松的选择,对于那些重复的任务更为高效。而Drafts的作者直接不满URL Schemes只能跳出不能跳回的问题,和 Marco Arment、 Justin Williams 等人开发了 x-callback-
7、URL 来做到跳出,并跳回 这样的动作。可以说这两款App对URL Schemes的推广和使用构思上的贡献是最突出 的,现在URL Schemes越来越被iOS用户和开发者所重视,在我眼里,一款 App是否完整系统地支持 URL Schemes已经是判断它是否优秀的标志之一。故事讲到这里,更重要的还是如何使用URL Schemes。故事里没有提到Pythonista、 Editorial 跟 Workflow ,绝不是我认为这些 App不够腕儿,而是它们做的事情重点已经不在于URL Schemes了。那么app之间的跳转有什么作用呢?我们所使用的每一个 app就相当于一 个功能,app的跳转可
8、以使得每个app就像一个功能组件一样,帮助我们完成需 要做的事情,比如三方支付,搜索,导航,分享等等。1、首先在Info.plist 中添加一行,选择URL types ,效果如下图所示:2、在展开的Item 0 中填写 URL identifier, 这个用来唯一标识用户自定义的URL Scheme,推荐使用域名白反转形式,如:shenzoom3、在 Item 0中添加新的一行,选择 URL Schemes4、展开URL Schemes,在Item 0中输入自定义的 Scheme的名称。在这里 只需要输入自定义的Scheme的名称即可,不需要加上:/,例如这里输入的是 fb149753595
9、510548那么对应的自定义的 URL 就是 fb149753595510548:/,这里 可以输入多个。5、最后一个完整的示例效果图:1、在Safari中使用在Safari中直接在浏览器的地址栏中输入即可启动刚才 的应用2、在其他的应用程序中使用在需要调用的地方使用下面的代码即可实现调 用NSString *customURL=shenzoom:/;UIApplication sharedApplication openURL:NSURL URLWithString:customURL;NSString *customURL=;UIApplication sharedApplication
10、openURL:NSURL URLWithString:customURL;(BOOL)application:(UIApplication *)application handleOpenURL:(NSURL*)url(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation解析(BOOL)application:(UIApplication *)application
11、openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotationif (sourceApplication isEqualToString:com.devzeng.demo.urlscheme) NSLog(”调用的应用程序的 Bundle ID 是:, sourceApplication);NSLog(URL scheme:%, url scheme);NSLog(URL query: %, url query);return YES; else return NO;苹
12、果的各项改进一点点蚕蚀了 URL Schemes的领域,但目前宣告URL Scheme晚开ij还为时尚早。6s之后的设备大概都会支持 3D Touch,它的特征之一就是从 Homescreen的 App 图标上直接进入该App 的具体某个功能了。这个功能也让很多人兴奋了一把,虽说会用URL Schemes的人早就做到类似的事了。不过,既然官方已经有了这样的功能,为什么还要用 URL Schemes?同样,在 iOS 9 中,我们还可以用 Siri 建立关于 App 的提醒事项,来做到以前只有用Launch Center PM口 Due这样的App才能做到的定时打开 App。而 且iPhone 6s还可以做到不在充电状态下使用 Hi, S
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 6910-2026锅炉用水和冷却水分析方法钙的测定络合滴定法
- 2026年口腔门诊新媒体运营与患者转化
- 染色体嵌合体的产前诊断与咨询
- 麻醉前评估与择期手术病人控制标准
- 临潭《基层公共服务》阶段测试卷
- 极寒天气医疗救援车辆调度优化
- 肺叶切除术后预防应激性溃疡护理
- 第一节 主要地貌的景观特点说课稿2025学年高中地理中图版2019必修第一册-中图版2019
- 26年儿童患者智力发育随访
- 26年乡村服务质控手册
- 河南资本集团笔试题库
- 2026湖北神农架林区公安局招聘辅警22人笔试备考试题及答案解析
- 2026菏泽特殊教育职业学校公开招聘人员(2人)考试模拟试题及答案解析
- 2026年ESG(可持续发展)考试题及答案
- 2026广东广州市越秀区人民街道办事处招聘社区退管专职人员2人笔试参考题库及答案详解
- 13.1 在劳动中创造人生价值 课件(内嵌视频)2025-2026学年统编版道德与法治七年级上册
- 2026年科技馆展品维护工程师面试技术问答
- 2026年防治碘缺乏病日宣传课件
- 2026年新版事故应急处置卡模板(新版27类事故分类依据YJT 32-2025要求编制)
- 身骑白马 SSA 三声部合唱谱
- 2026广东中考历史押题必刷卷含答案
评论
0/150
提交评论