应用程序资源的获取方法及装置与流程

文档序号:11154558阅读:364来源:国知局
应用程序资源的获取方法及装置与制造工艺

本发明涉及一种终端应用技术领域,特别是涉及一种应用程序资源的获取方法及装置。



背景技术:

随着移动互联网技术的发展,移动设备的使用已很普遍。用户可以在移动设备上安装应用程序(Application,APP),以满足用户的各种需求。即移动设备通过加载应用程序的应用安装包(AndroidPackage,APK),进行应用程序的安装。

目前,应用程序只能使用自身应用安装包中的应用程序资源或者系统应用安装包中的应用程序资源,如果多个应用程序都需要用到同样的应用程序资源,且该应用程序资源不是系统应用安装包中的应用程序资源时,那么这些应用程序的应用安装包中都要存储一份相同的应用程序资源,进而会造成应用安装包的存储空间的浪费。



技术实现要素:

有鉴于此,本发明提供了一种应用程序资源的获取方法及装置,主要目的在于可以节省应用安装包的存储空间。

依据本发明一个方面,提供了一种应用程序资源的获取方法,该方法包括:

当应用程序需要获取应用程序资源时,获取所述应用程序资源对应的安装包标识;

检测所述安装包标识是否为预先配置的通用资源应用安装包的安装包标识,所述通用资源应用安装包中保存有多个应用程序的通用应用程序资源;

若是,则确定所述应用程序需要获取的应用程序资源为所述通用应用程序资源;

从所述通用资源应用安装包中获取所述通用应用程序资源并传递给所述应用程序。

依据本发明另一个方面,提供了一种应用程序资源的获取装置,该装置包括:

获取单元,用于当应用程序需要获取应用程序资源时,获取所述应用程序资源对应的安装包标识;

检测单元,用于检测所述安装包标识是否为预先配置的通用资源应用安装包的安装包标识,所述通用资源应用安装包中保存有多个应用程序的通用应用程序资源;

确定单元,用于若所述检测单元检测出所述安装包标识为预先配置的通用资源应用安装包的安装包标识,则确定所述应用程序需要获取的应用程序资源为所述通用应用程序资源;

所述获取单元,还用于从所述通用资源应用安装包中获取所述通用应用程序资源并传递给所述应用程序。

借由上述技术方案,本发明提供的一种应用程序资源的获取方法及装置,与目前当多个应用程序都需要用到同样的应用程序资源,且该应用程序资源不是系统应用安装包中的应用程序资源时,需要在这些应用程序的应用安装包中都要存储一份相同的应用程序资源相比,本发明可以将多个应用程序的通用应用程序资源预先保存在通用资源应用安装包中,当应用程序需要获取应用程序资源时,可以将该应用程序资源对应的安装包标识与通用资源应用安装包的安装包标识进行匹配,如果匹配成功,则可以从通用资源应用安装包获取该应用程序需要获取的应用程序资源,通过这种方式无需在每个应用程序的应用安装包中都存储一份相同的应用程序资源,减小了应用安装包的大小,进而节省了应用安装包的存储空间。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了本发明实施例提供的一种应用程序资源的获取方法流程示意图;

图2示出了本发明实施例提供的另一种应用程序资源的获取方法流程示意图;

图3示出了本发明实施例提供的一种应用程序资源的获取装置结构示意图;

图4示出了本发明实施例提供的另一种应用程序资源的获取装置结构示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

本发明实施例提供了一种应用程序资源的获取方法,可以节省应用安装包的存储空间,如图1所示,该方法包括:

101、当应用程序需要获取应用程序资源时,获取应用程序资源对应的安装包标识。

其中,应用程序资源可以为布局文件、字符串、图片、声音、视频等。安装包标识可以为资源标识号码(Identity,ID)的特定位置上的号码,例如,安装包标识(package ID)可以为资源ID号的前两位号码。

对于本发明实施例的执行主体可以为对应用程序资源进行获取的装置,在本发明实施例中,可以预先通过特定工具软件,对该装置进行设置,使得该装置可以支持自定义的安装包标识,当应用程序需要获取应用程序资源时,该装置可以获取该应用程序资源对应的安装包标识,并根据该安装包标识获取相应的应用程序资源,以便将该相应的应用程序资源传递给应用程序进行使用。

102、检测安装包标识是否为预先配置的通用资源应用安装包的安装包标识。

其中,通用资源应用安装包中保存有多个应用程序的通用应用程序资源。

在本发明实施例中,可以预先将多个应用程序的通用应用程序资源保存在一个应用安装包中,得到通用资源应用安装包,并且可以为该通用资源应用安装包配置相应的安装包标识。对于本发明实施例,当应用程序需要获取应用程序资源时,可以将该应用程序资源的安装包标识与通用资源应用安装包的安装包标识进行匹配,根据匹配结果,确定应用程序需要获取的应用程序资源是否为该通用资源应用安装包中保存的通用应用程序资源。

103、若检测出安装包标识为预先配置的通用资源应用安装包的安装包标识,则确定应用程序需要获取的应用程序资源为通用应用程序资源。

例如,通用资源应用安装包的安装包标识为标识A,如果应用程序需要获取的应用程序资源对应的安装包标识也是标识A时,说明应用程序需要获取的应用程序资源就是通用资源应用安装包中保存的通用应用程序资源。

104、从通用资源应用安装包中获取通用应用程序资源并传递给应用程序。

在确定应用程序需要获取的应用程序资源就是通用资源应用安装包中保存的通用应用程序资源之后,可以从该通用资源应用安装包中获取通用应用程序资源,然后将其传递给应用程序进行使用。与目前当多个应用程序都需要用到同样的应用程序资源,且该应用程序资源不是系统应用安装包中的应用程序资源时,需要在这些应用程序的应用安装包中都要存储一份相同的应用程序资源相比,通过本发明实施例提供的一种应用程序资源的获取方法,无需在每个应用程序的应用安装包中都存储一份相同的应用程序资源,就可以实现通用应用程序资源的调用,减小了应用安装包的大小,进而节省了应用安装包的存储空间。当后续如果需要对多个应用程序的通用应用程序资源进行修改时,可以直接对相应通用资源安装包中的通用应用程序资源进行修改,无需对这些应用程序进行相关修改操作,可以提高通用应用程序资源的修改效率。

为了更好的对上述图1所示的方法进行理解,作为对上述实施方式的细化和扩展,本发明实施例提供了另一种应用程序资源的获取方法,如图2所示,该方法包括:

201、将多个应用程序的通用应用程序资源保存在预定文件夹中。

其中,预定文件夹可以根据实际需求进行配置。

对于本发明实施例,可以预先统计哪些应用程序资源属于多个应用程序都需要用到的应用程序资源,进而统计得到多个应用程序的通用应用程序资源,然后将该通用应用程序保存在预定文件夹中。

202、对预定文件夹进行打包处理,得到通用资源应用安装包。

将保存有多个应用程序的通用应用程序资源的预定文件夹进行打包处理,得到通用资源应用安装包。

203、创建通用资源应用安装包的安装包标识。

其中,该通用资源应用安装包的安装包标识可以根据实际需求进行配置,并且需要区别于应用程序自身资源应用安装包的安装包标识以及系统资源应用安装包的安装包标识。例如,系统资源应用安装包的安装包标识可以设置为0x01,应用程序自身资源应用安装包的安装包标识为0x7f,而通用资源应用安装包的安装包标识可以定义为0x01和0x7f以外的标识。

204、将通用资源应用安装包的安装包标识,分别编译到多个应用程序中每个应用程序对应的资源调用表里。

其中,资源调用表中保存有不同的应用程序资源分别所在的应用安装包的安装包标识。

在本发明实施例中,当应用程序需要获取应用程序资源时,可以在资源调用表中查找该应用程序资源所在的应用安装包的安装包标识,进而可以根据该安装包标识找到对应的应用程序资源。

205、当应用程序需要获取应用程序资源时,获取应用程序资源对应的安装包标识。

具体可以获取应用程序资源对应的资源标识;然后提取资源标识的预定位置上的标识,作为应用程序资源对应的安装包标识。其中,预定位置可以根据实际需求预设进行设定,例如,可以提取资源标识的前两位或前三位号码,作为应用程序资源对应的安装包标识。

206、检测安装包标识是否为预先配置的通用资源应用安装包的安装包标识。

其中,通用资源应用安装包中保存有多个应用程序的通用应用程序资源。

步骤206具体可以包括:根据安装包标识查询资源调用表,确定该安装包标识是否与资源调用表中保存的通用资源应用安装包的安装包标识相匹配;若匹配,则确定该安装包标识为通用资源应用安装包的安装包标识,进而可以识别出应用程序需要获取的应用程序资源就是通用资源应用安装包中保存的通用应用程序资源。

若检测出应用程序需要获取应用程序资源对应的安装包标识不是通用资源应用安装包的安装包标识,则检测该安装包标识是否为应用程序自身资源的应用安装包的安装包标识;和/或检测该安装包标识是否为系统资源的应用安装包的安装包标识;若该安装包标识为应用程序自身资源的应用安装包的安装包标识,则从应用程序自身资源的应用安装包中获取应用程序需要获取的应用程序资源并传递给应用程序;若该安装包标识为系统资源的应用安装包的安装包标识,则从系统资源的应用安装包中获取应用程序需要获取的应用程序资源并传递给应用程序。

例如,应用程序自身资源的应用安装包的安装包标识为0x7f,系统资源应用安装包的安装包标识为0x01,如果应用程序需要获取应用程序资源对应的安装包标识为0x7f时,从应用程序自身资源的应用安装包中获取应用程序需要获取的应用程序资源并传递给该应用程序;如果应用程序需要获取应用程序资源对应的安装包标识为0x01时,从系统资源的应用安装包中获取应用程序需要获取的应用程序资源并传递给该应用程序。

207、若检测出安装包标识为预先配置的通用资源应用安装包的安装包标识,则确定应用程序需要获取的应用程序资源为通用应用程序资源。

例如,资源调用表中保存的通用资源应用安装包的安装包标识为标识B,如果应用程序需要获取的应用程序资源对应的安装包标识也是标识B时,说明应用程序需要获取的应用程序资源就是通用资源应用安装包中保存的通用应用程序资源。

208、从通用资源应用安装包中获取通用应用程序资源并传递给应用程序。

进一步地,为了满足对通用应用程序资源进行更新的需求,还可以包括:当接收到对通用资源应用安装包的更新指令时,从通用资源应用安装包中获取通用应用程序资源,以及与通用应用程序资源对应的更新信息;根据更新信息对通用应用程序资源进行更新。例如,根据更新信息,对通用应用程序资源进行替换资源或修改资源,无需对每个应用程序都做应用程序资源更新操作,可以提高应用程序资源的更新效率。

本发明实施例提供的另一种应用程序资源的获取方法,与目前当多个应用程序都需要用到同样的应用程序资源,且该应用程序资源不是系统应用安装包中的应用程序资源时,需要在这些应用程序的应用安装包中都要存储一份相同的应用程序资源相比,本发明实施例可以将多个应用程序的通用应用程序资源预先保存在通用资源应用安装包中,无需在每个应用程序的应用安装包中都存储一份相同的应用程序资源,减小了应用安装包的大小,进而节省了应用安装包的存储空间;并且当需要对应用程序资源进行更新时,需要对通用应用程序资源进行相应更新,无需对每个应用程序都做应用程序资源更新操作,可以提高应用程序资源的更新效率。

进一步地,作为图1所述方法的具体实现,本发明实施例提供了一种应用程序资源的获取装置,如图3所示,所述装置包括:获取单元31、检测单元32、确定单元33。

获取单元31,可以用于当应用程序需要获取应用程序资源时,获取所述应用程序资源对应的安装包标识。获取单元31为本装置中获取应用程序资源对应安装包标识的主要功能模块,在获取得到安装包标识后,可以触发检测单元32进行工作。

检测单元32,可以用于检测所述安装包标识是否为预先配置的通用资源应用安装包的安装包标识,所述通用资源应用安装包中保存有多个应用程序的通用应用程序资源。检测单元32为本装置中用于根据应用程序需要获取的应用程序资源对应安装包标识进行查询所在应用安装包的主要功能模块。在本发明实施例中,可以预先将多个应用程序的通用应用程序资源保存在一个应用安装包中,得到通用资源应用安装包,并且可以为该通用资源应用安装包配置相应的安装包标识。

确定单元33,可以用于若所述检测单元32检测出所述安装包标识为预先配置的通用资源应用安装包的安装包标识,则确定所述应用程序需要获取的应用程序资源为所述通用应用程序资源。例如,通用资源应用安装包的安装包标识为标识C,如果应用程序需要获取的应用程序资源对应的安装包标识也是标识C时,说明应用程序需要获取的应用程序资源就是通用资源应用安装包中保存的通用应用程序资源。

所述获取单元31,还可以用于从所述通用资源应用安装包中获取所述通用应用程序资源并传递给所述应用程序。

需要说明的是,本发明实施例提供的一种应用程序资源的获取装置所涉及各功能单元的其他相应描述,可以参考图1中的对应描述,在此不再赘述。

本发明实施例提供的一种应用程序资源的获取装置,包括:获取单元、检测单元、确定单元等,与目前当多个应用程序都需要用到同样的应用程序资源,且该应用程序资源不是系统应用安装包中的应用程序资源时,需要在这些应用程序的应用安装包中都要存储一份相同的应用程序资源相比,无需在每个应用程序的应用安装包中都存储一份相同的应用程序资源,就可以实现通用应用程序资源的调用,减小了应用安装包的大小,进而节省了应用安装包的存储空间。当后续如果需要对多个应用程序的通用应用程序资源进行修改时,可以直接对相应通用资源安装包中的通用应用程序资源进行修改,无需对这些应用程序进行相关修改操作,可以提高通用应用程序资源的修改效率。

进一步地,作为图2所述方法的具体实现,本发明实施例提供了另一种应用程序资源的获取装置,如图4所示,所述装置包括:获取单元41、检测单元42、确定单元43。

获取单元41,可以用于当应用程序需要获取应用程序资源时,获取所述应用程序资源对应的安装包标识。

检测单元42,可以用于检测所述安装包标识是否为预先配置的通用资源应用安装包的安装包标识,所述通用资源应用安装包中保存有多个应用程序的通用应用程序资源。

确定单元43,可以用于若所述检测单元42检测出所述安装包标识为预先配置的通用资源应用安装包的安装包标识,则确定所述应用程序需要获取的应用程序资源为所述通用应用程序资源。

所述获取单元41,还可以用于从所述通用资源应用安装包中获取所述通用应用程序资源并传递给所述应用程序。

进一步地,为了实现通用资源应用安装包保存有多个应用程序的通用应用程序资源,所述装置还包括:保存单元44、处理单元45、创建单元46、编译单元47。

保存单元44,可以用于将多个应用程序的通用应用程序资源保存在预定文件夹中。

处理单元45,可以用于对所述预定文件夹进行打包处理,得到通用资源应用安装包。

创建单元46,可以用于创建所述通用资源应用安装包的安装包标识。其中,该通用资源应用安装包的安装包标识可以根据实际需求进行配置,并且需要区别于应用程序自身资源应用安装包的安装包标识以及系统资源应用安装包的安装包标识。

编译单元47,可以用于将所述通用资源应用安装包的安装包标识,分别编译到所述多个应用程序中每个应用程序对应的资源调用表里,所述资源调用表中保存有不同的应用程序资源分别所在的应用安装包的安装包标识。在本发明实施例中,当应用程序需要获取应用程序资源时,可以在资源调用表中查找该应用程序资源所在的应用安装包的安装包标识,进而可以根据该安装包标识找到对应的应用程序资源。

所述检测单元42,具体可以用于根据所述安装包标识查询所述资源调用表,确定所述安装包标识是否与所述资源调用表中保存的所述通用资源应用安装包的安装包标识相匹配;若匹配,则确定所述安装包标识为所述通用资源应用安装包的安装包标识,进而可以识别出应用程序需要获取的应用程序资源就是通用资源应用安装包中保存的通用应用程序资源。

所述检测单元42,还可以用于若检测出所述安装包标识不是预先配置的通用资源应用安装包的安装包标识,则检测所述安装包标识是否为所述应用程序自身资源的应用安装包的安装包标识;和/或检测所述安装包标识是否为系统资源的应用安装包的安装包标识。

所述获取单元41,还可以用于若所述安装包标识为所述应用程序自身资源的应用安装包的安装包标识,则从所述应用程序自身资源的应用安装包中获取所述应用程序需要获取的应用程序资源并传递给所述应用程序。

所述获取单元41,还可以用于若所述安装包标识为系统资源的应用安装包的安装包标识,则从所述系统资源的应用安装包中获取所述应用程序需要获取的应用程序资源并传递给所述应用程序。

所述获取单元41,具体可以用于获取所述应用程序资源对应的资源标识;提取所述资源标识的预定位置上的标识,作为所述应用程序资源对应的安装包标识。其中,预定位置可以根据实际需求预设进行设定,例如,可以提取资源标识的前两位或前三位号码,作为应用程序资源对应的安装包标识。

需要说明的是,本发明实施例提供的另一种应用程序资源的获取装置所涉及各功能单元的其他相应描述,可以参考图2中的对应描述,在此不再赘述。

本发明实施例提供的另一种应用程序资源的获取装置,包括:获取单元、检测单元、确定单元、保存单元、处理单元、创建单元、编译单元等,与目前当多个应用程序都需要用到同样的应用程序资源,且该应用程序资源不是系统应用安装包中的应用程序资源时,需要在这些应用程序的应用安装包中都要存储一份相同的应用程序资源相比,本发明实施例可以将多个应用程序的通用应用程序资源预先保存在通用资源应用安装包中,无需在每个应用程序的应用安装包中都存储一份相同的应用程序资源,减小了应用安装包的大小,进而节省了应用安装包的存储空间;并且当需要对应用程序资源进行更新时,需要对通用应用程序资源进行相应更新,无需对每个应用程序都做应用程序资源更新操作,可以提高应用程序资源的更新效率。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

可以理解的是,上述方法及装置中的相关特征可以相互参考。另外,上述实施例中的“第一”、“第二”等是用于区分各实施例,而并不代表各实施例的优劣。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的一种应用程序资源的获取方法及装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1