CN109857454A - 安装包生成与缓存方法、装置、电子设备及存储介质 - Google Patents

安装包生成与缓存方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN109857454A
CN109857454A CN201811537827.0A CN201811537827A CN109857454A CN 109857454 A CN109857454 A CN 109857454A CN 201811537827 A CN201811537827 A CN 201811537827A CN 109857454 A CN109857454 A CN 109857454A
Authority
CN
China
Prior art keywords
file
installation kit
page
module
generates
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201811537827.0A
Other languages
English (en)
Other versions
CN109857454B (zh
Inventor
杨凯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Life Insurance Company of China Ltd
Original Assignee
Ping An Life Insurance Company of China Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ping An Life Insurance Company of China Ltd filed Critical Ping An Life Insurance Company of China Ltd
Priority to CN201811537827.0A priority Critical patent/CN109857454B/zh
Publication of CN109857454A publication Critical patent/CN109857454A/zh
Application granted granted Critical
Publication of CN109857454B publication Critical patent/CN109857454B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及安装包生成与缓存方法、装置、电子设备和存储介质。所述方法包括:在软件开发项目中引入第三方库,并将第三方库独立打包生成dll文件;将生成的dll文件的路径插入到软件开发项目中的HTML模板文件中使得HTML模板文件对应的页面在启动时加载所述dll文件;将软件开发项目中的文件放入到软件开发平台的目录中,通过webpack工具读取各个文件,并根据预设规则将各个文件的页面配置成单页面或多页面;结合第三方库及配置后的文件在开发平台上对所述软件开发项目进行开发生成软件开发项目的安装包;对安装包中的共享函数库文件进行压缩处理;及将压缩处理后的安装包发送给服务器进行缓存。本发明能够生成的安装包的文件大小,提升页面加载速度。

Description

安装包生成与缓存方法、装置、电子设备及存储介质
技术领域
本发明涉及计算机领域,具体涉及一种安装包生成与缓存方法、装置、电子设备和存储介质。
背景技术
目前多数第三方库都是并行下载,造成页面请求数过多,资源消耗过大。同时,目前APP发版之前都需要将H5资源拷贝至APP目录下进程存储,造成APP安装包过大。
发明内容
鉴于以上内容,有必要提出一种安装包生成与缓存方法、装置、电子设备和计算机可读存储介质,以减小APP文件的安装包的文件大小,提升页面加载速度。
本申请的第一方面提供一种安装包生成与缓存方法,所述方法包括:
在软件开发项目中引入第三方库,并将所述第三方库独立打包生成dll文件;
将生成的dll文件的路径插入到所述软件开发项目中的HTML模板文件中使得所述HTML模板文件对应的页面在启动时加载所述dll文件;
将所述软件开发项目中的各个文件放入到软件开发平台的目录中,通过webpack工具读取所述目录中的各个文件,并根据预设规则将所述各个文件配置成单页面或多页面;
结合所述第三方库及配置后的文件在所述开发平台上对所述软件开发项目进行开发生成所述软件开发项目的安装包,其中所述安装包中包括共享函数库文件;
对所述安装包中的共享函数库文件进行压缩处理;及
将压缩处理后的安装包发送给服务器进行缓存。
优选地,所述根据预设规则将所述各个文件的页面配置成单页面或多页面包括:
根据所述各个文件的页面功能的重要度、访问的次数多寡、页面内容的复杂度将所述各个文件配置成单页面或多页面。
优选地,所述结合所述第三方库及配置后的文件在所述开发平台上对所述软件开发项目进行加载生成所述软件开发项目的安装包包括:
获取用户需求并将获取的用户需求设置成一个功能组件;
将所述具有相同类别的功能组件设置成一个功能模块;
将所述功能组件设置为可动态加载的第一选项;
将所述功能模块设置为可动态加载的第二选项;及
加载所述功能模块,所述功能模块下的功能组件及所述第三方库,生成所述安装包。
优选地,所述对所述安装包中的共享函数库文件进行压缩处理包括:
获取所述安装包中的共享函数库文件对应的初始压缩包;
解压所述初始压缩包得到所述共享函数库文件;
调用预置压缩工具对所述共享函数库文件进行压缩得到目标压缩包;及
将所述目标压缩包存储至所述安装包的预置位置,并删除所述初始压缩包。
优选地,所述服务器为内容分发网络服务器。
优选地,所述将压缩处理后的安装包发送给服务器进行缓存包括:
对所述安装包中的所述各个文件采用MD5算法计算出所述安装包中的各个文件的MD5值,并将计算后的安装包发送给所述服务器。
优选地,所述方法还包括步骤:
当接收到所述安装包时,所述服务器识别所述安装包中的各个文件的MD5值;
判断所述服务器中是否已经存在有与所述MD5值对应的文件;
当确定所述服务器中不存在与所述MD5值对应的文件则将与所述MD5值对应的文件进行缓存;及
当确定所述服务器中存在与所述MD5值对应的文件则不对与所述MD5值对应的文件进行缓存。
本申请的第二方面提供一种安装包生成与缓存装置,所述装置包括:
打包模块,用于在软件开发项目中引入第三方库,并将所述第三方库独立打包生成dll文件;
路径插入模块,用于将生成的dll文件的路径插入到所述软件开发项目中的HTML模板文件中使得所述HTML模板文件对应的页面在启动时加载所述dll文件;
配置模块,用于将所述软件开发项目中的各个文件放入到软件开发平台的目录中,通过webpack工具读取所述目录中的各个文件,并根据预设规则将所述各个文件的页面配置成单页面或多页面;
安装包生成模块,用于结合所述第三方库及配置后的文件在所述开发平台上对所述软件开发项目进行加载生成所述软件开发项目的安装包,其中所述安装包中包括共享函数库文件;
压缩模块,用于对所述安装包中的共享函数库文件进行压缩处理;及
上传模块,用于将压缩处理后的安装包发送给服务器进行缓存。
本申请的第三方面提供一种电子设备,所述电子设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现所述安装包生成与缓存方法。
本申请的第四方面提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述安装包生成与缓存方法。
本案中将引入的第三方库独立打包后拆分生成dll文件及将生成的dll文件的路径插入到软件开发项目的HTML模板文件,可以大量减少待生成的安装包文件的体积,提升HTML模板文件对应的页面加载速度。
附图说明
图1是本发明一实施方式中安装包生成与缓存方法的应用环境示意图。
图2是本发明一实施方式中安装包生成与缓存方法的流程图。
图3是本发明一实施方式中安装包生成与缓存装置的结构图。
图4是本发明一实施方式中压缩模块的结构图。
图5为本发明电子设备较佳实施例的示意图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施例对本发明进行详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
优选地,本发明缓存方法应用在一个或者多个电子设备中。所述电子设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital SignalProcessor,DSP)、嵌入式设备等。
所述电子设备可以是桌上型计算机、笔记本电脑、平板电脑及云端服务器等计算设备。所述设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
实施例1
图1是本发明一实施方式中安装包生成与缓存方法的应用环境示意图。
参阅图1所示,所述安装包生成与缓存方法应用在服务器1及终端2中。所述服务器1与所述终端2通过网络3通信连接。其中,所述网络3可以是有线网络,也可以是无线网络,例如无线电、无线保真(Wireless Fidelity,WIFI)、蜂窝、卫星、广播等。本实施方式中,所述服务器1可以是单一的服务器,也可以为由几个功能服务器共同组成的服务器群。所述终端2可以是具有软件开发平台且具有网络连接功能的终端设备,例如,所述终端2可以是台式电脑、笔记本电脑等设备。
图2是本发明一实施方式中安装包生成与缓存方法的流程图。根据不同的需求,所述流程图中步骤的顺序可以改变,某些步骤可以省略。
参阅图2所示,所述安装包生成与缓存方法具体包括以下步骤:
步骤S201,在软件开发项目中引入第三方库,并将所述第三方库独立打包,生成dll文件。
本实施方式中,所述软件开发项目为实现特定功能的应用程序软件开发项目。所述软件开发项目中包括软件开发项目中所使用的第三方库信息、HTML模板文件。所述第三方库为一开源库。本实施方式中,在终端2中,通过webpack工具将软件开发项目所使用的第三方库独立打包成一个dll文件。其中,所述生成的dll文件内容在较长的一段时间内不会发生改变。
步骤S202,将生成的dll文件的路径插入到所述软件开发项目中的HTML模板文件中,使得所述HTML模板文件对应的页面在启动时,加载所述dll文件。
本实施方式中,通过将软件开发项目中的第三方库独立打包后拆分生成dll文件及将生成的dll文件的路径插入到软件开发项目中的HTML模板文件中可以大量减少软件开发项目中第三方库的文件体积。
步骤S203,将所述软件开发项目中的各个文件放入到软件开发平台的目录中,通过webpack工具读取所述目录中的各个文件并根据预设规则将所述各个文件配置成单页面或多页面。
在具体实施过程中,在将软件开发项目的各个文件放入到所述软件开发平台的目录后,所述目录进一步被放入一对象(object)。所述对象存储目录中各个文件的路径。然后,通过webpack工具读取所述对象所存储的文件路径下的各个文件,并根据预设规则将各个文件的页面配置成单页面或多页面。
本实施方式中,所述根据预设规则将各个文件的页面配置成单页面或多页面包括:根据所述各个文件的页面功能的重要度、访问的次数多寡、页面内容的复杂度将各个文件的页面配置成单页面或多页面。本实施方式中,当文件的页面的功能较重要时,可将对应的文件的页面配置成多页面;当文件的页面的功能较低时,将对应的文件的页面配置成单页面。本实施方式中,当文件具有较多的访问次数时,可将对应的文件的页面配置成多页面;当文件的访问次数较低时,将对应的文件的页面配置成单页面。当文件的页面内容复杂时,可将对应的文件的页面配置成多页面;当文件的页面内容简单时,将对应的文件的页面配置成单页面。
步骤S204,结合所述第三方库及配置后的所述各个文件在所述开发平台上对所述软件开发项目进行加载生成所述软件开发项目的安装包。
本实施方式中,可以基于VUE架构(一套构建用户界面的渐进式框架)并结合所述第三方库及配置后的所述各个文件在所述开发平台上对软件开发项目进行开发生成安装包资源。在具体实施方式中,步骤S204结合所述第三方库及所述软件开发项目中的各个文件在所述开发平台上对所述软件开发项目进行加载生成所述软件开发项目的安装包包括:
(S2041)获取用户需求并将获取的用户需求设置成一个功能组件。
本实施方式中,获取用户的需求后对用户需求进行分析,将用户需求设置成一个功能组件。本实施方式中,在进行软件开发时,根据不同的用户需求,选择不同的功能组件生成软件开发项目的安装包资源。例如,当软件开发人员定制一个优化工具软件时,用户的需求可以分为系统性能测试、网络系统优化、磁盘清理、主机驱动备份等,对应的功能组件为系统性能测试组件、网络系统优化组件、磁盘清理组件等。
(S2042)将所述具有相同类别的功能组件设置成一个功能模块。
本实施方式中,为了方便定制化开发软件开发项目,利于开发人员查找功能组件,根据不同的用户需求,将相同类别的功能组件设置到同一个功能模块中,每个功能模块中包括若个相同类别的功能组件。
(S2043)将所述功能组件设置为可动态加载的第一选项。
本实施方式中,为了能够根据用户需求的变化对所述功能组件进行添加或删除,将所述功能组件开发为可动态加载的第一选项。如此软件开发人员能够根据不同的用户需求,加载不同的功能组件,灵活、便捷地开发适合用户需求的软件。
(S2044)将所述功能模块设置为可动态加载的第二选项。
为了满足不同的用户需求,能够根据用户的需求添加相应的功能模块,将所述功能模块开发为可动态加载的第二选项。在进行软件的定制化开发时,软件开发人员根据不同的用户需求加载不同的功能模块,与用户需求无关的功能模块则不需要加载,进而节省了系统资源。
(S2045)加载所述功能模块,所述功能模块下的功能组件及所述第三方库,生成所述安装包。
本实施方式中,在加载所述功能模块,所述功能模块下的功能组件及所述第三方库生成安装包资源后,所生成的安装包中包括多个文件,如功能模块文件及共享函数库文件。
步骤S205,对所述安装包中的共享函数库文件进行压缩处理。
本实施方式中,在对安装包的共享函数库文件进行压缩处理时首先获取安装包内共享函数库文件对应的初始压缩包,及解压所述初始压缩包得到共享函数库文件;然后调用预置压缩工具对所述共享函数库文件进行压缩得到目标压缩包;最后将所述目标压缩包储存至所述安装包的预置位置,并删除所述初始压缩包,从而有效减小共享函数库文件对压缩包的占用空间大小,减小安装包的大小,进而减少传输过程中产生的流量并节省网络传输流量资源。
本实施方式中,步骤S205对所述安装包中的共享函数库文件进行压缩处理包括:
(S2051)获取所述安装包中的共享函数库文件对应的初始压缩包。
在一实施方式中,所述安装包是指apk安装包。在所述终端2的预设编译平台上中通过aapt对资源文件进行编译形成二进制文件,当所有的资源文件编译完成后将打包形成apk安装包。其中,预设编译平台为Android编译平台。当应用程序有共享函数库文件的情况下,通常采用Android编译平台内置默认的Deflate算法压缩共享函数库文件,并将共享函数库文件压缩后存储在apk安装包的libs中。本实施方式中,上述初始压缩包为apk安装包的libs中共享函数库文件通过Deflate算法压缩得到的压缩文件。
(S2052)解压所述初始压缩包得到共享函数库文件。
本实施方式中,当获取到上述apk安装包的libs中存在初始压缩包时,可以通过对应的压缩工具对初始压缩包进行解压,以还原共享函数库文件。具体地,本实施方式中,上述对压缩工具所采用的压缩算法可以根据实际需要进行设置,在此不做进一步地限定。例如,可以采用Deflate算法,具体地,所述7-Zip压缩工具应用了LZMA(Lempel-Ziv-Markovchain-Algorithm)算法,所述LZMA算法是Deflate算法和LZ77算法改良和优化后的压缩算法。在其他实施例中,还可以直接采用Deflate算法对初始压缩包进行解压处理,以得到共享函数库文件。
(S2053)调用预置压缩工具对所述共享函数库文件进行压缩得到目标压缩包。
所述预置压缩工具的形式可以根据实际实际需要进行设置,但所述预置压缩工具的压缩比要大于上述Deflate算法的压缩比。所述压缩比是指压缩前与压缩后的文件所占的磁盘空间比值,其中压缩比越大,压缩效果越好,压缩后的体积越小。本实施方式中,通过上述预置压缩工具压缩后的目标压缩包小于上述初始压缩包。优选地,所述预置压缩工具可以为7-Zip压缩工具,所述7-Zip压缩工具中应用了LZMA算法。
(S2054)将所述目标压缩包存储至所述安装包的预置位置,并删除所述初始压缩包。
本实施方式中,上述预置位置的路径可以根据实际需要进行设置,例如,优选地,可以放在apk安装包的assets目录下。具体地,可以在对所述共享函数库文件进行压缩的过程中对是否压缩成功进行判断,当压缩出错时,则不进行压缩包替换,当成功压缩得到上述目标压缩包时,则将目标压缩包储存至apk安装包的assets目录下,然后删除初始压缩包。在本实施方式中,由于在将目标压缩包储存至所述安装包的预置位置后,删除初始压缩包,从而有效保证了安装包的完整性,防止了由于在压缩得到目标压缩包时发生错误,影响后续安装所述apk安装包时无法正常加载共享函数。
步骤S206,将所述安装包上传到服务器1中进行缓存。
本实施方式中,所述服务器为CDN(Content Delivery Network,内容分发网络)服务器,所述终端2可将经过压缩处理的安装包资源上传到CDN服务器中进行存储。
本实施方式中,所述方法在步骤S205之后还包括:所述终端2对所述安装包中的各个文件采用MD5(Message Digest Algotithm 5,信息-摘要算法5)算法计算出各个文件的MD5值,并将计算后的安装包发送给所述服务器1。
本实施方式中,通过信息-摘要算法5计算安装包中的各个文件的MD5哈希值,其中所述MD5哈希值为一128位的散列值且不同的文件通过信息-摘要算法5计算出的MD5哈希值是不同的。如此,本发明通过比较两个文件对应的MD5哈希值是否相同,可以确定两个文件的内容是否相同。
本实施方式中,所述方法在步骤S206之后还包括:所述服务器1接收所述终端2发送的包含有MD5值的文件的安装包。
在具体实施方式中,当接收到所述安装包时,所述服务器1识别所述安装包中的各个文件的MD5值,判断所述服务器1中是否已经存在有与所述MD5值对应的文件,当确定所述服务器1中不存在与所述MD5值对应的文件则将与所述MD5值对应的文件进行缓存,及当确定所述服务器1中存在与所述MD5值对应的文件则不对与所述MD5值对应的文件进行缓存。
本实施方式中,当确定服务器1中不存在与所述MD5值对应的文件时时,则表示服务器1中第一次接收到与所述MD5值对应的文件;当确定服务器1中存在所述与所述MD5值对应的文件时,则表示服务器1之前已经接收到与所述MD5值对应的文件。
实施例2
图3为本发明一实施方式中安装包生成与缓存装置40较佳实施例的结构图。
在一些实施例中,所述安装包生成与缓存装置40运行于电子设备中。所述安装包生成与缓存装置40可以包括多个由程序代码段所组成的功能模块。所述安装包生成与缓存装置40中的各个程序段的程序代码可以存储于存储器中,并由至少一个处理器所执行,以执行安装包生成与缓存的功能。
本实施例中,所述安装包生成与缓存装置40根据其所执行的功能,可以被划分为多个功能模块。参阅图3所示,所述安装包生成与缓存装置40可以包括打包模块401、路径插入模块402、配置模块403、安装包生成模块404、压缩模块405、上传模块406、计算模块407及缓存处理模块408。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。其中,所述打包模块401、路径插入模块402、配置模块403、安装包生成模块404、压缩模块405、上传模块406及计算模块407运行在终端2中,所述缓存处理模块408运行在服务器1中。在一些实施例中,关于各模块的功能将在后续的实施例中详述。
所述打包模块401用于在软件开发项目中引入第三方库,并将所述第三方库独立打包,生成dll文件。
本实施方式中,所述软件开发项目为实现特定功能的应用程序软件开发项目。所述软件开发项目中包括软件开发项目中所使用的第三方库信息、HTML模板文件。所述第三方库为一开源库。本实施方式中,在终端2中,所述打包模块401通过webpack工具将软件开发项目所使用的第三方库独立打包成一个dll文件。其中,所述生成的dll文件内容在较长的一段时间内不会发生改变。
所述路径插入模块402将生成的dll文件的路径插入到所述软件开发项目中的HTML模板文件中,使得所述HTML模板文件对应的页面在启动时,加载所述dll文件。
本实施方式中,通过将软件开发项目中的第三方库独立打包后拆分生成dll文件及将生成的dll文件的路径插入到软件开发项目中的HTML模板文件中可以大量减少软件开发项目中第三方库的文件体积。
所述配置模块403将所述软件开发项目中的各个文件放入到软件开发平台的目录中,通过webpack工具读取所述目录中的各个文件并根据预设规则将所述各个文件配置成单页面或多页面。
在具体实施过程中,在将软件开发项目的各个文件放入到所述软件开发平台的目录后,所述目录进一步被放入一对象(object)。所述对象存储目录中各个文件的路径。然后,通过webpack工具读取所述对象所存储的文件路径下的各个文件,并根据预设规则将各个文件的页面配置成单页面或多页面。
本实施方式中,所述配置模块403根据预设规则将各个文件的页面配置成单页面或多页面包括:根据所述各个文件的页面功能的重要度、访问的次数多寡、页面内容的复杂度将各个文件的页面配置成单页面或多页面。本实施方式中,当文件的页面的功能较重要时,可将对应的文件的页面配置成多页面;当文件的页面的功能较低时,将对应的文件的页面配置成单页面。本实施方式中,当文件具有较多的访问次数时,可将对应的文件的页面配置成多页面;当文件的访问次数较低时,将对应的文件的页面配置成单页面。当文件的页面内容复杂时,可将对应的文件的页面配置成多页面;当文件的页面内容简单时,将对应的文件的页面配置成单页面。
所述安装包生成模块404用于结合所述第三方库及配置后的所述各个文件在所述开发平台上对所述软件开发项目进行加载生成所述软件开发项目的安装包。
本实施方式中,可以基于VUE架构(一套构建用户界面的渐进式框架)并结合所述第三方库及配置后的所述各个文件在所述开发平台上对软件开发项目进行开发生成安装包资源。
具体的,所述安装包生成模块404首先获取用户需求并将获取的用户需求设置成一个功能组件。本实施方式中,在获取用户的需求后,所述安装包生成模块404对用户需求进行分析,并将用户需求设置成一个功能组件。本实施方式中,在进行软件开发时,根据不同的用户需求,选择不同的功能组件生成软件开发项目的安装包资源。例如,当软件开发人员定制一个优化工具软件时,用户的需求可以分为系统性能测试、网络系统优化、磁盘清理、主机驱动备份等,对应的功能组件为系统性能测试组件、网络系统优化组件、磁盘清理组件等。
所述安装包生成模块404还用于将所述具有相同类别的功能组件设置成一个功能模块。
本实施方式中,为了方便定制化开发软件开发项目,利于开发人员查找功能组件,根据不同的用户需求,将相同类别的功能组件设置到同一个功能模块中,每个功能模块中包括若个相同类别的功能组件。
所述安装包生成模块404还用于将所述功能组件开发为可动态加载的第一选项。
本实施方式中,为了能够根据用户需求的变化对所述功能组件进行添加或删除,将所述功能组件设置为可动态加载的第一选项。如此软件开发人员能够根据不同的用户需求,加载不同的功能组件,灵活、便捷地开发适合用户需求的软件。
所述安装包生成模块404还用于将所述功能模块开设置为可动态加载的第二选项。
为了满足不同的用户需求,能够根据用户的需求添加相应的功能模块,将所述功能模块开发为可动态加载的第二选项。在进行软件的定制化开发时,软件开发人员根据不同的用户需求加载不同的功能模块,与用户需求无关的功能模块则不需要加载,进而节省了系统资源。
最后,所述安装包生成模块404加载所述功能模块,所述功能模块下的功能组件及所述第三方库,生成所述安装包。
本实施方式中,在加载所述功能模块,所述功能模块下的功能组件及所述第三方库生成安装包资源后,所生成的安装包中包括多个文件,如功能模块文件及共享函数库文件。
所述压缩模块405用于对所述安装包中的共享函数库文件进行压缩处理。
本实施方式中,在对安装包的共享函数库文件进行压缩处理时首先获取安装包内共享函数库文件对应的初始压缩包,及解压所述初始压缩包得到共享函数库文件;然后调用预置压缩工具对所述共享函数库文件进行压缩得到目标压缩包;最后将所述目标压缩包储存至所述安装包的预置位置,并删除所述初始压缩包,从而有效减小共享函数库文件对压缩包的占用空间大小,减小安装包的大小,进而减少传输过程中产生的流量并节省网络传输流量资源。
具体的,请参考图4,所示为本发明一实施方式中压缩模块404的结构示意图。所述压缩模块405包括获取子模块4051、解压子模块4052、压缩子模块4053及存储子模块4054。
所述获取子模块4051获取所述安装包中的共享函数库文件对应的初始压缩包。
在一实施方式中,所述安装包是指apk安装包。所述获取子模块4051在所述终端2的预设编译平台上中通过aapt对资源文件进行编译形成二进制文件,当所有的资源文件编译完成后将打包形成apk安装包。其中,预设编译平台为Android编译平台。当应用程序有共享函数库文件的情况下,通常采用Android编译平台内置默认的Deflate算法压缩共享函数库文件,并将共享函数库文件压缩后存储在apk安装包的libs中。本实施方式中,上述初始压缩包为apk安装包的libs中共享函数库文件通过Deflate算法压缩得到的压缩文件。
所述解压子模块4052解压所述初始压缩包得到共享函数库文件。
本实施方式中,当获取到上述apk安装包的libs中存在初始压缩包时,所述解压子模块4052通过对应的压缩工具对初始压缩包进行解压,以还原共享函数库文件。具体地,本实施方式中,上述对压缩工具所采用的压缩算法可以根据实际需要进行设置,在此不做进一步地限定。例如,可以采用Deflate算法,具体地,所述7-Zip压缩工具应用了LZMA(Lempel-Ziv-Markov chain-Algorithm)算法,所述LZMA算法是Deflate算法和LZ77算法改良和优化后的压缩算法。在其他实施例中,还可以直接采用Deflate算法对初始压缩包进行解压处理,以得到共享函数库文件。
所述压缩子模块4053调用预置压缩工具对所述共享函数库文件进行压缩得到目标压缩包。
所述预置压缩工具的形式可以根据实际实际需要进行设置,但所述预置压缩工具的压缩比要大于上述Deflate算法的压缩比。所述压缩比是指压缩前与压缩后的文件所占的磁盘空间比值,其中压缩比越大,压缩效果越好,压缩后的体积越小。本实施方式中,所述压缩子模块4053通过上述预置压缩工具压缩后的目标压缩包小于上述初始压缩包。优选地,所述预置压缩工具可以为7-Zip压缩工具,所述7-Zip压缩工具中应用了LZMA算法。
所述存储子模块4054将所述目标压缩包存储至所述安装包的预置位置,并删除所述初始压缩包。
本实施方式中,上述预置位置的路径可以根据实际需要进行设置,例如,优选地,可以放在apk安装包的assets目录下。具体地,所述存储子模块4054在对所述共享函数库文件进行压缩的过程中对是否压缩成功进行判断,当压缩出错时,则不进行压缩包替换,当成功压缩得到上述目标压缩包时,则将目标压缩包储存至apk安装包的assets目录下,然后删除初始压缩包。在本实施方式中,由于在将目标压缩包储存至所述安装包的预置位置后,删除初始压缩包,从而有效保证了安装包的完整性,防止了由于在压缩得到目标压缩包时发生错误,影响后续安装所述apk安装包时无法正常加载共享函数。
所述上传模块406将所述安装包上传到服务器1中进行缓存。
本实施方式中,所述服务器为CDN(Content Delivery Network,内容分发网络)服务器,所述上传模块406将经过压缩处理的安装包资源上传到CDN服务器中进行存储。
本实施方式中,所述计算模块407用于对所述安装包中的各个文件采用MD5(Message Digest Algotithm 5,信息-摘要算法5)算法计算出各个文件的MD5值,并将计算后的安装包发送给所述服务器1。
本实施方式中,所述计算模块407通过信息-摘要算法5计算安装包中的各个文件的MD5哈希值,其中所述MD5哈希值为一128位的散列值且不同的文件通过信息-摘要算法5计算出的MD5哈希值是不同的。如此,本发明通过比较两个文件对应的MD5哈希值是否相同,可以确定两个文件的内容是否相同。
所述缓存处理模块408用于控制服务器1接收所述终端2发送的包含有MD5值的文件的安装包。
在具体实施方式中,当接收到所述安装包时,所述缓存处理模块408识别所述安装包中的各个文件的MD5值;判断所述服务器1中是否已经存在有与所述MD5值对应的文件。当确定所述服务器1中不存在与所述MD5值对应的文件时,所述缓存处理模块408将与所述MD5值对应的文件进行缓存,及当确定所述服务器1中存在与所述MD5值对应的文件则不对与所述MD5值对应的文件进行缓存。
本实施方式中,当确定服务器1中不存在与所述MD5值对应的文件时时,则表示服务器1中第一次接收到与所述MD5值对应的文件;当确定服务器1中存在所述与所述MD5值对应的文件时,则表示服务器1之前已经接收到与所述MD5值对应的文件。
实施例三
图5为本发明电子设备6较佳实施例的示意图。
所述电子设备6包括存储器61、处理器62以及存储在所述存储器61中并可在所述处理器62上运行的计算机程序63。所述处理器62执行所述计算机程序63时实现上述安装包生成与缓存方法实施例中的步骤,例如图2所示的步骤S201~S206。或者,所述处理器62执行所述计算机程序63时实现上述安装包生成与缓存装置实施例中各模块/单元的功能,例如图4中的模块401~408。
示例性的,所述计算机程序63可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器61中,并由所述处理器62执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,所述指令段用于描述所述计算机程序63在所述电子设备6中的执行过程。例如,所述计算机程序63可以被分割成图4中的打包模块401、路径插入模块402、配置模块403、安装包生成模块404、压缩模块405、上传模块406、计算模块407及缓存处理模块408,各模块具体功能参见实施例二。
所述电子设备6可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。本领域技术人员可以理解,所述示意图仅仅是电子设备6的示例,并不构成对电子设备6的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述电子设备6还可以包括输入输出设备、网络接入设备、总线等。
所称处理器62可以是中央处理模块(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者所述处理器62也可以是任何常规的处理器等,所述处理器62是所述电子设备6的控制中心,利用各种接口和线路连接整个电子设备6的各个部分。
所述存储器61可用于存储所述计算机程序63和/或模块/单元,所述处理器62通过运行或执行存储在所述存储器61内的计算机程序和/或模块/单元,以及调用存储在存储器61内的数据,实现所述计电子设备6的各种功能。所述存储器61可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备6的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器61可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
所述电子设备6集成的模块/单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,所述计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
在本发明所提供的几个实施例中,应所述理解到,所揭露的电子设备和方法,可以通过其它的方式实现。例如,以上所描述的电子设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
另外,在本发明各个实施例中的各功能模块可以集成在相同处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在相同模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他模块或步骤,单数不排除复数。电子设备权利要求中陈述的多个模块或电子设备也可以由同一个模块或电子设备通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

Claims (10)

1.一种安装包生成与缓存方法,其特征在于,所述方法包括:
在软件开发项目中引入第三方库,并将所述第三方库独立打包生成dll文件;
将生成的dll文件的路径插入到所述软件开发项目中的HTML模板文件中使得所述HTML模板文件对应的页面在启动时加载所述dll文件;
将所述软件开发项目中的各个文件放入到软件开发平台的目录中,通过webpack工具读取所述目录中的各个文件,并根据预设规则将所述各个文件配置成单页面或多页面;
结合所述第三方库及配置后的文件在所述开发平台上对所述软件开发项目进行加载生成所述软件开发项目的安装包,其中所述安装包中包括共享函数库文件;
对所述安装包中的共享函数库文件进行压缩处理;及
将压缩处理后的安装包发送给服务器进行缓存。
2.如权利要求1所述的安装包生成与缓存方法,其特征在于,所述根据预设规则将所述各个文件配置成单页面或多页面包括:
根据所述各个文件的页面功能的重要度、访问的次数多寡、页面内容的复杂度将所述各个文件的页面配置成单页面或多页面。
3.如权利要求1所述的安装包生成与缓存方法,其特征在于,所述结合所述第三方库及配置后的文件在所述开发平台上对所述软件开发项目进行加载生成所述软件开发项目的安装包包括:
获取用户需求并将获取的用户需求设置成一个功能组件;
将具有相同类别的所述功能组件设置成一个功能模块;
将所述功能组件设置为可动态加载的第一选项;
将所述功能模块设置为可动态加载的第二选项;及
加载所述功能模块,所述功能模块下的功能组件及所述第三方库,生成所述安装包。
4.如权利要求1所述的安装包生成与缓存方法,其特征在于,所述对所述安装包中的共享函数库文件进行压缩处理包括:
获取所述安装包中的共享函数库文件对应的初始压缩包;
解压所述初始压缩包得到所述共享函数库文件;
调用预置压缩工具对所述共享函数库文件进行压缩得到目标压缩包;及
将所述目标压缩包存储至所述安装包的预置位置,并删除所述初始压缩包。
5.如权利要求1所述的安装包生成与缓存方法,其特征在于,所述服务器为内容分发网络服务器。
6.如权利要求1所述的安装包生成与缓存方法,其特征在于,所述将压缩处理后的安装包发送给服务器进行缓存包括:
对所述安装包中的所述各个文件采用MD5算法计算出所述安装包中的各个文件的MD5值,并将计算后的安装包发送给所述服务器。
7.如权利要求1所述的安装包生成与缓存方法,其特征在于,所述方法还包括步骤:
当接收到所述安装包时,所述服务器识别所述安装包中的各个文件的MD5值;
判断所述服务器中是否已经存在有与所述MD5值对应的文件;
当确定所述服务器中不存在与所述MD5值对应的文件则将与所述MD5值对应的文件进行缓存;及
当确定所述服务器中存在与所述MD5值对应的文件则不对与所述MD5值对应的文件进行缓存。
8.一种安装包生成与缓存装置,其特征在于,所述装置包括:
打包模块,用于在软件开发项目中引入第三方库,并将所述第三方库独立打包生成dll文件;
路径插入模块,用于将生成的dll文件的路径插入到所述软件开发项目中的HTML模板文件中使得所述HTML模板文件对应的页面在启动时加载所述dll文件;
配置模块,用于将所述软件开发项目中的各个文件放入到软件开发平台的目录中,通过webpack工具读取所述目录中的各个文件,并根据预设规则将所述各个文件配置成单页面或多页面;
安装包生成模块,用于结合所述第三方库及配置后的文件在所述开发平台上对所述软件开发项目进行加载生成所述软件开发项目的安装包,其中所述安装包中包括共享函数库文件;
压缩模块,用于对所述安装包中的共享函数库文件进行压缩处理;及
上传模块,用于将压缩处理后的安装包发送给服务器进行缓存。
9.一种电子设备,其特征在于:所述电子设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1-7中任一项所述安装包生成与缓存方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述安装包生成与缓存方法。
CN201811537827.0A 2018-12-15 2018-12-15 安装包生成与缓存方法、装置、电子设备及存储介质 Active CN109857454B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811537827.0A CN109857454B (zh) 2018-12-15 2018-12-15 安装包生成与缓存方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811537827.0A CN109857454B (zh) 2018-12-15 2018-12-15 安装包生成与缓存方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN109857454A true CN109857454A (zh) 2019-06-07
CN109857454B CN109857454B (zh) 2023-07-18

Family

ID=66891334

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811537827.0A Active CN109857454B (zh) 2018-12-15 2018-12-15 安装包生成与缓存方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN109857454B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110765394A (zh) * 2019-09-20 2020-02-07 中国平安人寿保险股份有限公司 so文件加载方法、装置、存储介质及终端设备
CN110795143A (zh) * 2019-10-22 2020-02-14 中国工商银行股份有限公司 用于处理功能模块的方法、装置、计算设备以及介质
CN110955450A (zh) * 2019-12-16 2020-04-03 北京智游网安科技有限公司 一种应用包文件的归属统计方法、系统及存储介质
CN111708567A (zh) * 2020-05-06 2020-09-25 北京五八信息技术有限公司 一种应用程序的处理方法和装置
CN111783017A (zh) * 2020-07-23 2020-10-16 北京斗米优聘科技发展有限公司 一种h5页面构建方法、装置、电子设备及其计算机可读存储介质

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010029605A1 (en) * 1998-06-19 2001-10-11 Jonathan A. Forbes Software package management
CN101308458A (zh) * 2008-06-30 2008-11-19 华为技术有限公司 用于软件定制化开发的方法和装置
CN102833350A (zh) * 2012-09-11 2012-12-19 优视科技有限公司 WebApp更新的处理方法和处理装置
CN103955375A (zh) * 2014-05-21 2014-07-30 北京安兔兔科技有限公司 一种应用安装文件的生成方法、应用的启动方法及装置
CN104503741A (zh) * 2014-12-01 2015-04-08 北京金和软件股份有限公司 一种制作和发布app一体化的系统
TW201516871A (zh) * 2013-10-25 2015-05-01 Tencent Tech Shenzhen Co Ltd 生成應用程式安裝封包、執行應用程式的方法及裝置
US20160291952A1 (en) * 2015-03-30 2016-10-06 Apperian, Inc. Processing, modification, distribution of custom software installation packages
CN106325896A (zh) * 2015-06-18 2017-01-11 腾讯科技(深圳)有限公司 安装包的共享函数库文件处理方法及装置
CN107038045A (zh) * 2017-03-30 2017-08-11 腾讯科技(深圳)有限公司 加载库文件的方法及装置
CN107168704A (zh) * 2017-05-11 2017-09-15 金蝶软件(中国)有限公司 一种多页面资源文件注入方法及装置
CN107273548A (zh) * 2017-07-20 2017-10-20 阿里巴巴集团控股有限公司 动态页面的实现方法和装置
US20180210866A1 (en) * 2017-01-25 2018-07-26 Wal-Mart Stores, Inc. Systems, method, and non-transitory computer-readable storage media for generating code for displaying a webpage
CN108418717A (zh) * 2018-03-02 2018-08-17 平安科技(深圳)有限公司 安卓应用打包上传方法、装置、计算机设备及存储介质
CN108628626A (zh) * 2018-05-04 2018-10-09 北京小度信息科技有限公司 开发环境搭建方法、代码更新方法及装置
CN108897562A (zh) * 2018-06-27 2018-11-27 腾讯科技(深圳)有限公司 安装包更新方法、装置、介质以及设备

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010029605A1 (en) * 1998-06-19 2001-10-11 Jonathan A. Forbes Software package management
CN101308458A (zh) * 2008-06-30 2008-11-19 华为技术有限公司 用于软件定制化开发的方法和装置
CN102833350A (zh) * 2012-09-11 2012-12-19 优视科技有限公司 WebApp更新的处理方法和处理装置
TW201516871A (zh) * 2013-10-25 2015-05-01 Tencent Tech Shenzhen Co Ltd 生成應用程式安裝封包、執行應用程式的方法及裝置
CN103955375A (zh) * 2014-05-21 2014-07-30 北京安兔兔科技有限公司 一种应用安装文件的生成方法、应用的启动方法及装置
CN104503741A (zh) * 2014-12-01 2015-04-08 北京金和软件股份有限公司 一种制作和发布app一体化的系统
US20160291952A1 (en) * 2015-03-30 2016-10-06 Apperian, Inc. Processing, modification, distribution of custom software installation packages
CN106325896A (zh) * 2015-06-18 2017-01-11 腾讯科技(深圳)有限公司 安装包的共享函数库文件处理方法及装置
US20180210866A1 (en) * 2017-01-25 2018-07-26 Wal-Mart Stores, Inc. Systems, method, and non-transitory computer-readable storage media for generating code for displaying a webpage
CN107038045A (zh) * 2017-03-30 2017-08-11 腾讯科技(深圳)有限公司 加载库文件的方法及装置
CN107168704A (zh) * 2017-05-11 2017-09-15 金蝶软件(中国)有限公司 一种多页面资源文件注入方法及装置
CN107273548A (zh) * 2017-07-20 2017-10-20 阿里巴巴集团控股有限公司 动态页面的实现方法和装置
CN108418717A (zh) * 2018-03-02 2018-08-17 平安科技(深圳)有限公司 安卓应用打包上传方法、装置、计算机设备及存储介质
CN108628626A (zh) * 2018-05-04 2018-10-09 北京小度信息科技有限公司 开发环境搭建方法、代码更新方法及装置
CN108897562A (zh) * 2018-06-27 2018-11-27 腾讯科技(深圳)有限公司 安装包更新方法、装置、介质以及设备

Non-Patent Citations (13)

* Cited by examiner, † Cited by third party
Title
"ReWAP:Reducing Redundant Transfers for Mobile Web Browsing via App-Specific Resource Packaging" *
ESAU SILVA: "How to use Webpack with React: a in-depth tutorial", vol. 2018, Retrieved from the Internet <URL:https://www.freecodecamp.org/news/learn-webpack-for-react-a36d4cac5060/> *
SEVDOT: "使用 HBuilder 将 Vue 项目打包成手机 App", pages 1 - 6 *
XUANZHE LIU等: "ReWAP:Reducing Redundant Transfers for Mobile Web Browsing via App-Specific Resource Packaging", IEEE TRANSACTIONS ON MOBILE COMPUTING, vol. 2018, no. 2017, pages 2625 - 2638 *
南歌子: "前端的单页面模 式和多页面模式", Retrieved from the Internet <URL:https://www.cnblogs.com/nangezi/p/9201226.html> *
南歌子: "前端的单页面模式和多页面模式" *
啃先生: "Webpack 打包第 三方代码库", Retrieved from the Internet <URL:https://segmentfault.com/a/1190000007498471/> *
啃先生: "Webpack打包第三方代码库" *
小LING的博客: "VUE项目(webpack+mintui),使用hbuilder打包app" *
智明书: "webpack 之\"多页 面开发\"配置", Retrieved from the Internet <URL:https://www.jianshu.com/p/49 19a1d163cf> *
智明书: "webpack之\"多页面开发\"配置" *
甄玉磊: "Webpack打包实用优化方案", pages 14 - 25 *
邓雯婷: "基于Vue.js构建单页面GIS应用的方法研究", 《科技创新与应用》, no. 2018, pages 5 - 7 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110765394A (zh) * 2019-09-20 2020-02-07 中国平安人寿保险股份有限公司 so文件加载方法、装置、存储介质及终端设备
CN110795143A (zh) * 2019-10-22 2020-02-14 中国工商银行股份有限公司 用于处理功能模块的方法、装置、计算设备以及介质
CN110795143B (zh) * 2019-10-22 2023-11-07 中国工商银行股份有限公司 用于处理功能模块的方法、装置、计算设备以及介质
CN110955450A (zh) * 2019-12-16 2020-04-03 北京智游网安科技有限公司 一种应用包文件的归属统计方法、系统及存储介质
CN110955450B (zh) * 2019-12-16 2023-09-29 北京智游网安科技有限公司 一种应用包文件的归属统计方法、系统及存储介质
CN111708567A (zh) * 2020-05-06 2020-09-25 北京五八信息技术有限公司 一种应用程序的处理方法和装置
CN111708567B (zh) * 2020-05-06 2023-05-23 北京五八信息技术有限公司 一种应用程序的处理方法和装置
CN111783017A (zh) * 2020-07-23 2020-10-16 北京斗米优聘科技发展有限公司 一种h5页面构建方法、装置、电子设备及其计算机可读存储介质

Also Published As

Publication number Publication date
CN109857454B (zh) 2023-07-18

Similar Documents

Publication Publication Date Title
CN109857454A (zh) 安装包生成与缓存方法、装置、电子设备及存储介质
CN113688006B (zh) 一种日志数据的校验方法及装置
CN102349062B (zh) 浏览器缓存与远程仓库同步的方法和系统
US7945698B2 (en) System and method for partial data compression and data transfer
CN111615716B (zh) 在客户端机器之间分配着色器来进行预缓存
CN110825479A (zh) 页面处理方法、装置、终端设备、服务器和存储介质
CN111857550B (zh) 用于数据去重的方法、设备以及计算机可读介质
CN109831476A (zh) 安装包下载方法、装置、电子设备及存储介质
KR20070008619A (ko) 무선 장치 동작 환경에서 비검증된 프로그램들의 실행
CN104221016A (zh) 高速缓存管理
CN105049514A (zh) 一种文件下载方法和装置
CN112394932A (zh) 浏览器网页自动换肤方法及装置
CN112416359A (zh) 动态分区定制方法、装置、设备和计算机可读存储介质
CN113992662A (zh) 文件传输方法、装置及存储介质
CN106325896A (zh) 安装包的共享函数库文件处理方法及装置
CN111625250B (zh) 应用更新方法、装置、存储介质及电子设备
CN113467769A (zh) 一种基于html5的三层式混合开发系统及其开发方法
CN108959285B (zh) 数据库主键获取方法及装置、存储介质、电子设备
CN111796878B (zh) 一种应用于单页应用的资源拆分、加载方法和装置
CN108008984A (zh) 一种资源文件下载更新方法及装置
CN111680215B (zh) 一种信息推送的方法、装置和电子设备
CN114637531A (zh) 应用程序接口动态生成方法及装置
CN114579167A (zh) 一种下载应用升级文件的方法、装置及存储介质
CN111967001A (zh) 一种基于双容器的解码与编码安全隔离方法
CN108139950B (zh) 分布式扩展执行的方法及计算系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant