[发明专利]一种实现应用插件化的方法及电子设备有效
申请号: | 201910880334.5 | 申请日: | 2019-09-18 |
公开(公告)号: | CN112527301B | 公开(公告)日: | 2022-10-25 |
发明(设计)人: | 周平科;童碧峰;周犇;马宇驰;郑志超 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/61;G06F8/65;G06F9/445 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 赵小霞 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 应用 插件 方法 电子设备 | ||
本申请提供一种实现应用插件化的方法及电子设备,用以实现应用的插件独立开发和发布,以提高应用开发的效率,和提升应用的灵活性。在该方案中,电子设备在提前安装应用的基础模块的前提下,可以从服务器下载并安装该应用的插件,以扩展该应用的功能。由于电子设备可以从服务器上独立下载插件,插件的开发、发布以及下载安装过程均无需依赖于基础模块,因此该方案可以实现应用的独立开发和发布,能够提高应用开发的效率,和提升应用的灵活性。
技术领域
本申请涉及电子设备技术领域,尤其涉及一种实现应用插件化的方法及电子设备。
背景技术
电子设备可以通过各种应用(application,APP)为用户提供服务。针对不同的操作系统,其对应的供应商提供了专用的开发方案。针对谷歌提供的安卓(Android)操作系统,谷歌官方提供了BundleAPP方案。
参阅图1所示,BundleAPP方案的原理为:开发者需要针对应用的所有功能进行开发,并在编译时通过工具将应用的分割为基础模块和至少一个特性模块,以及将每个模块按照不同的资源配置,进一步划分为多个资源配置模块。其中,所述基础模块用于实现应用的基础功能,所述特性模型用于实现该应用的扩展功能。通常,基础模块的文件形式为base.apk,特性模块的文件形式为split.apk。以相机应用为例,基础模块实现的功能为照相和录像,特性模块用于实现夜景、美食、全景等扩展功能的拍摄。需要说明的是,应用扩展功能的实现依赖于应用的基础功能。
如图1中所示,基础模块和每个特性模块还可以划分为多个资源配置模块,例如,特性2模块可以根据图片资源、指令资源以及语言资源,可以划分为至少一个按分辨率分割的图片资源、至少一个按CPU指令集分割的动态库资源,以及至少一个按语言分类的语言资源。
在BundleAPP方案中,由于应用是整体开发,在编译阶段才分割为多个模块,因此,分割后的模块之间存在调用关系(即互相依赖),因此,各个模块需要同时开发和编译,也需要在应用开发完成后,需要将该应用的所有模块整体打包,发布到应用市场。电子设备根据应用市场的推送,下载整个应用的安装包从而更新或安装该应用。
然而,随着用户需求的不断增长,应用的功能也越来越强大,这就导致应用的规模越来越大,为了快速响应需求,应用的模块化开发诉求日益强烈,因此针对Android操作系统设计一种应用的模块化(也可以称为插件化)方法,以实现应用的模块的独立开发和发布。
发明内容
本申请提供了一种实现应用插件化的方法及电子设备,用以实现应用的插件独立开发和发布,以提高应用开发的效率,和提升应用的灵活性。
第一方面,本申请实施例提供了一种实现应用插件化的方法,该方法可以适用于图2所示的应用场景中。该方法为:在电子设备已经安装应用的基础模块后,所述电子设备从服务器下载该应用的插件,然后安装所述插件。其中,所述基础模块用于实现所述应用的基础功能,所述插件用于实现所述应用的扩展功能。
通过上述方法,电子设备在提前安装应用的基础模块的前提下,可以从服务器下载并安装该应用的插件,以扩展该应用的功能。由于电子设备可以从服务器上独立下载插件,插件的开发、发布以及下载安装过程均无需依赖于基础模块,因此该方案可以实现应用的独立开发和发布,能够提高应用开发的效率,和提升应用的灵活性。
在一个可能的设计中,所述插件的开发环境与所述基础模块的开发环境相同。这样,可以保证所述插件和所述基础模块可以在相同的设备中安装运行。
在一个可能的设计中,在所述电子设备从所述服务器下载所述应用的插件之前,所述电子设备确定所述插件的识别信息与所述基础模块的识别信息相同,其中所述插件的识别信息用于确定所述插件所归属的应用,所述基础模块的识别信息用于确定所述基础模块所归属的应用。其中,插件/基础模块的识别信息可以包括包名和签名等。这样,可以保证所述电子设备下载的插件与已安装的基础模块归属于同一应用,避免下载本地未安装的应用的插件,造成资源浪费。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910880334.5/2.html,转载请声明来源钻瓜专利网。