[发明专利]iOS系统中应用程序间通信的方法及装置有效
申请号: | 201210548391.1 | 申请日: | 2012-12-17 |
公开(公告)号: | CN103034546A | 公开(公告)日: | 2013-04-10 |
发明(设计)人: | 陈杰 | 申请(专利权)人: | 北京奇虎科技有限公司;奇智软件(北京)有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/44 |
代理公司: | 北京市德权律师事务所 11302 | 代理人: | 刘丽君 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | ios 系统 应用程序 通信 方法 装置 | ||
技术领域
本发明涉及计算机技术领域,具体涉及iOS系统中应用程序间通信的方法及装置。
背景技术
iOS系统是一种手持设备(如手机等)的操作系统。由于iOS系统比较封闭,每个应用程序只能在为该改程序创建的文件系统中读取文件,不可以去其它地方访问,此区域被成为沙盒,所有的非代码文件都要保存在此,例如图像、图标、声音、映像、属性列表、文本文件等。
iOS平台上常见的安装包有三种:deb、ipa和pxl,其中,ipa格式是在iOS平台上推出的专属软件安装包。ipa文件实质是一个zip压缩包(不是rar或7z包),由于zip包不能记录权限和所有者等信息,所以苹果规定了ipa的安装方式,即全部ipa都会解包安装在/var/mobile/Applications目录下,全部文件和目录的所有者及用户组均设为mobile(ID为501),主程序(可执行文件)的权限设为0755(所有人都可以执行,但只有所有者可以修改),可执行文件在plist中定义。全部目录权限设为0755,而其它所有文件都设为0644(仅所有者可以修改,其余人只允许读取,全部人都不允许执行)。ipa解包后并非直接放置于Applications目录下,而是放在一串由随机码构成的目录下,其作用在于,只允许这个软件运行在一个特定的沙盒(Sandbox)中,不能干扰其他软件。由于这个软件只能在这个特定的目录下运行(当然了,部分程序会调用系统的通讯录、相机等组件,但仍然是受限制的),从而保证了整个系统的安全性和稳定性。
iOS操作系统的上述特点在保证整个系统的安全性和稳定性的同时,也在其他方面存在着明显的缺陷。例如,正是由于iOS的ipa安装文件就如同一个个盒子一般,放在了/var/mobile/applications目录下,以这个程序的眼光看外面,基本什么也看不到,以至于看不到在自己的目录外的信息。因此,在iOS系统中,不同的应用程序之间基本无法实现相互通信。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的iOS系统中应用程序间通信的方法及装置,能够实现在iOS系统中不同应用程序间的相互通信。
依据本发明的一个方面,提供了一种iOS系统中应用程序间通信的方法,用于在当前应用程序与目标应用程序之间进行消息传递,所述目标应用程序具有定制的统一资源定位符方案URL Schemes字段信息,所述方法包括:
获知目标应用程序的所述URL Schemes字段信息;
根据所述URL Schemes字段信息生成所述目标应用程序的URL;
在当前应用程序中,以所述目标应用程序的URL为参数,调用UIApplication类的openURL方法,向目标应用程序进行消息传递。
可选地,从当前应用程序传递到目标应用程序的消息包括启动所述目标应用程序的消息,所述在当前应用程序中,以所述目标应用程序的URL为参数,调用UIApplication类的openURL方法,向目标应用程序进行消息传递包括:
在当前应用程序的显示界面中提供所述目标应用程序的启动入口;
当通过所述启动入口接收到启动所述目标应用程序的请求时,以所述目标应用程序的URL为参数,调用UIApplication类的openURL方法,启动所述目标应用程序。
可选地,所述启动所述目标应用程序之后,还包括:
将显示焦点切换到目标应用程序的显示界面。
可选地,所述目标应用程序的URL中还包括当前应用程序向目标应用程序传递的值,所述目标应用程序被启动后,存储传递过来的值或者根据传递过来的值执行相应的操作。
可选地,当前应用程序也具有定制的URL Schemes字段信息,所述目标应用程序的URL中还包括当前应用程序的信息,所述目标应用程序被启动后,在目标应用程序的显示界面显示所述当前应用程序的启动入口,以便通过该启动入口返回到所述当前应用程序。
可选地,还包括:
以目标应用程序的URL Schemes字段信息为参数,调用UIApplication类的canOpenURL方法,判断当前操作系统中是否已安装所述目标应用程序;
如果尚未安装,调用应用程序安装列表工具,并在所述应用程序安装列表工具中显示出所述目标应用程序,以便提示用户安装所述目标应用程序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司;奇智软件(北京)有限公司,未经北京奇虎科技有限公司;奇智软件(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210548391.1/2.html,转载请声明来源钻瓜专利网。