应用程序功能扩展方法和装置制造方法及图纸

技术编号:12014900 阅读:76 留言:0更新日期:2015-09-06 01:25
本发明专利技术提出一种应用程序的功能扩展方法和装置,该应用程序的功能扩展方法包括安装脚本插件,所述脚本插件能够提供需要扩展的功能,所述脚本插件是第三方开发者根据宿主应用程序提供的开放接口编写的,且所述脚本插件的编写语言与所述宿主应用程序的编写语言具有互通性;运行所述脚本插件,使得所述脚本插件利用所述脚本插件与所述宿主应用程序之间的语言互通性,调用所述宿主应用程序的运行环境扩展所述宿主应用程序的功能。该方法能够解决链接库形式的扩展方式存在的一些问题。

【技术实现步骤摘要】
【专利摘要】本专利技术提出一种应用程序的功能扩展方法和装置,该应用程序的功能扩展方法包括安装脚本插件,所述脚本插件能够提供需要扩展的功能,所述脚本插件是第三方开发者根据宿主应用程序提供的开放接口编写的,且所述脚本插件的编写语言与所述宿主应用程序的编写语言具有互通性;运行所述脚本插件,使得所述脚本插件利用所述脚本插件与所述宿主应用程序之间的语言互通性,调用所述宿主应用程序的运行环境扩展所述宿主应用程序的功能。该方法能够解决链接库形式的扩展方式存在的一些问题。【专利说明】应用程序功能扩展方法和装置
本专利技术涉及信息
,尤其涉及一种应用程序功能扩展方法和装置。
技术介绍
目前移动应用程序开发过程中经常存在多团队在同一个应用程序中协同开发的情况,多团队利用团队各自的技术优势分担不同的开发功能,共同提升应用程序质量。在开发过程中,第三方开发者可以提供功能模块给宿主应用程序,以扩展宿主应用程序的功能。 现有技术中,第三方开发者以链接库形式提供功能模块给宿主应用程序,然后由宿主应用集成该链接库。但是,链接库形式的扩展方式需要单独集成到应用程序的可执行文件内,在脱离宿主应用程序源代码时无法修改和扩展链接库相关功能,一些情况下宿主应用的全部或部分源代码权限给第三方开发者,会造成安全问题,链接库形式的扩展方式无法做到在已发布的宿主应用程序中生效。
技术实现思路
本专利技术旨在至少在一定程度上解决相关技术中的技术问题之一。 为此,本专利技术的一个目的在于提出一种应用程序的功能扩展方法,该方法可以解决链接库形式的扩展方式存在的上述问题。 本专利技术的另一个目的在于提出一种应用程序的功能扩展装置。 为达到上述目的,本专利技术第一方面实施例提出的应用程序的功能扩展方法,包括:安装脚本插件,所述脚本插件能够提供需要扩展的功能,所述脚本插件是第三方开发者根据宿主应用程序提供的开放接口编写的,且所述脚本插件的编写语言与所述宿主应用程序的编写语言具有互通性;运行所述脚本插件,使得所述脚本插件利用所述脚本插件与所述宿主应用程序之间的语言互通性,调用所述宿主应用程序的运行环境扩展所述宿主应用程序的功能。 本专利技术第一方面实施例提出的应用程序的功能扩展方法,通过脚本插件实现应用程序的功能扩展,该脚本插件是第三方开发者根据宿主应用程序开放的接口编写的,可以解决链接库形式的扩展方式存在的上述问题。 为达到上述目的,本专利技术第二方面实施例提出的应用程序的功能扩展装置,包括:安装模块,用于安装脚本插件,所述脚本插件能够提供需要扩展的功能,所述脚本插件是第三方开发者根据宿主应用程序提供的开放接口编写的,且所述脚本插件的编写语言与所述宿主应用程序的编写语言具有互通性;运行模块,用于运行所述脚本插件,使得所述脚本插件利用所述脚本插件与所述宿主应用程序之间的语言互通性,调用所述宿主应用程序的运行环境扩展所述宿主应用程序的功能。 本专利技术第二方面实施例提出的应用程序的功能扩展装置,通过脚本插件实现应用程序的功能扩展,该脚本插件是第三方开发者根据宿主应用程序开放的接口编写的,可以解决链接库形式的扩展方式存在的上述问题。 本专利技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本专利技术的实践了解到。 【专利附图】【附图说明】 本专利技术上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中: 图1是本专利技术一实施例提出的应用程序的功能扩展方法的流程示意图; 图2是本专利技术另一实施例提出的应用程序的功能扩展方法的流程示意图; 图3是本专利技术另一实施例提出的应用程序的功能扩展装置的结构示意图; 图4是本专利技术另一实施例提出的应用程序的功能扩展装置的结构示意图。 【具体实施方式】 下面详细描述本专利技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本专利技术,而不能理解为对本专利技术的限制。相反,本专利技术的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。 图1是本专利技术一实施例提出的应用程序的功能扩展方法的流程示意图,该方法包括: Sll:安装脚本插件,所述脚本插件能够提供需要扩展的功能,所述脚本插件是第三方开发者根据宿主应用程序提供的开放接口编写的,且所述脚本插件的编写语言与所述宿主应用程序的编写语言具有互通性。 其中,宿主应用程序是指要进行功能扩展的应用程序。应用程序可以是指移动设备上的应用程序。 脚本插件可以包括一个或者多个脚本文件。 脚本插件可以初始设置在客户端本地,宿主应用程序从本地安装脚本插件;或者, 脚本插件也可以初始设置在服务端,宿主应用程序从服务端下载脚本插件后安装该脚本插件。 脚本插件是具有需要扩展的功能的插件,例如,宿主应用程序初始功能是根据用户触发获取地理位置信息,需要扩展的功能是自动获取地理位置信息,因此,相应的脚本插件可以是具有自动获取地理位置信息的插件。 脚本插件是第三方开发者根据宿主应用程序的开放接口编写的,由于只需要宿主应用程序开发接口,并不需要宿主应用程序开发全部或部分的源代码,因此可以提高代码安全性。 脚本插件是使用指定脚本编写的,指定脚本的语言与宿主应用程序的编写语言具有互通性,例如,宿主应用程序的编写语言是C语言,脚本插件的编写语言可以是Lua语言坐寸ο S12:运行所述脚本插件,使得所述脚本插件利用所述脚本插件与所述宿主应用程序之间的语言互通性,调用所述宿主应用程序的运行环境扩展所述宿主应用程序的功能。 其中,宿主应用程序中可以预先设置与脚本插件对应的脚本解释器,通过脚本解释器可以解释脚本插件,从而正确运行脚本插件。 例如,将脚本插件安装在宿主应用程序的沙盒中,在运行宿主应用程序后,宿主应用程序从沙盒中加载脚本插件,并调用脚本解释器解释并运行脚本插件。 运行脚本插件后,脚本插件可以利用与宿主应用程序的语言互通性,调用宿主应用程序的运行环境(runtime)动态扩展本地语言的逻辑,达到扩展宿主应用程序功能的目的。 例如,当脚本插件是具有自动获取地理位置的插件时,该脚本插件在运行后,可以调用宿主应用程序的运行环境,从而使得宿主应用程序具有自动获取地理位置的功能。 本实施例通过脚本插件实现应用程序的功能扩展,该脚本插件是第三方开发者根据宿主应用程序开放的接口编写的,由于不需要宿主应用程序开放源代码,从而可以保证源代码的安全性;本实施例的功能扩展是采用脚本插件,脚本插件不需要集成到宿主应用程序的可执行文件内,因此可以脱离宿主应用程序进行修改和扩展等;本实施例的脚本插件在运行时可以调用宿主应用程序的运行环境实现功能扩展,不限定宿主应用程序是否发布,可以在已发布的宿主应用程序中生效,从而可以解决链接库形式的扩展方式存在的上述问题。 图2是本专利技术另一实施例提出的应用程序的功能扩展方法的流程示意图,该方法包括: S21:由宿主应用程序向所述第三方开发者提供开放接口,以使所述第三方开发者根据所述开发接口使用指定脚本编写所述脚本插件,所述指定脚本的语言与所述宿主应用程序的编写语言具本文档来自技高网...

【技术保护点】
一种应用程序的功能扩展方法,其特征在于,包括:安装脚本插件,所述脚本插件能够提供需要扩展的功能,所述脚本插件是第三方开发者根据宿主应用程序提供的开放接口编写的,且所述脚本插件的编写语言与所述宿主应用程序的编写语言具有互通性;运行所述脚本插件,使得所述脚本插件利用所述脚本插件与所述宿主应用程序之间的语言互通性,调用所述宿主应用程序的运行环境扩展所述宿主应用程序的功能。

【技术特征摘要】

【专利技术属性】
技术研发人员:张超
申请(专利权)人:百度在线网络技术北京有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1