CN111538510B - 一种应用程序安装包的确定方法、装置及电子设备 - Google Patents
一种应用程序安装包的确定方法、装置及电子设备 Download PDFInfo
- Publication number
- CN111538510B CN111538510B CN202010344049.4A CN202010344049A CN111538510B CN 111538510 B CN111538510 B CN 111538510B CN 202010344049 A CN202010344049 A CN 202010344049A CN 111538510 B CN111538510 B CN 111538510B
- Authority
- CN
- China
- Prior art keywords
- program object
- resource file
- installation package
- application program
- application
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
一种应用程序安装包的确定方法、装置及电子设备,属于iOS移动应用开发领域。所述方法包括:获取显示高优先级页面所需的资源文件,得到第一资源文件;将应用程序安装包中用于显示页面所需的全部资源文件和所述第一资源文件,进行做差处理,得到第二资源文件;删除所述应用程序安装包中的所述第二资源文件。采用本申请提供的技术方案,可以减小应用程序安装包的容量。
Description
技术领域
本申请涉及iOS移动应用开发技术领域,尤其涉及一种应用程序安装包的确定方法、装置及电子设备。
背景技术
为了确保应用程序安装包的容量满足应用市场的容量要求,开发人员可以删除应用程序安装包中冗余的资源文件。其中,资源文件可以是显示页面所需的图像、文本等,冗余的资源文件可以是随着业务功能下线不再被使用的资源文件,或者,重复的资源文件。但是随着应用程序所包含业务功能的增加,可能存在删除冗余的资源文件后,应用程序安装包的容量依然不满足容量要求的情况。因此,亟需有效的减小应用程序安装包的容量的方案。
发明内容
为了解决上述技术问题,本申请提供了一种应用程序安装包的确定方法、装置及电子设备。
第一方面,提供了一种应用程序安装包的确定方法,所述方法包括:
获取显示高优先级页面所需的资源文件,得到第一资源文件;
将应用程序安装包中用于显示页面所需的全部资源文件和所述第一资源文件,进行做差处理,得到第二资源文件;
删除所述应用程序安装包中的所述第二资源文件。
可选的,所述获取显示高优先级页面所需的资源文件,得到第一资源文件,包括:
确定用于调用资源文件的预设程序对象;
将所述预设程序对象的第一存储地址更改为预先存储的数据接收程序对象的第二存储地址,以使所述应用程序基于所述第二存储地址调用所述数据接收程序对象;
响应于高优先级页面的显示指令,在所述数据接收程序对象的调用过程中,通过所述数据接收程序对象接收所述应用程序调用的资源文件的配置参数;
根据所述配置参数,确定第一资源文件。
可选的,所述确定用于调用资源文件的预设程序对象,包括:
对应用程序安装包中用于显示页面所需的全部资源文件进行分类,得到多个分类类别;
针对每个分类类别,根据预先存储的分类类别与程序对象的对应关系,确定与该分类类别对应的程序对象,得到用于调用该分类类别的资源文件的预设程序对象;
所述将所述预设程序对象的第一存储地址更改为预先存储的数据接收程序对象的第二存储地址,包括:
针对每个分类类别,根据预先存储的分类类别与数据接收程序对象的对应关系,确定与该分类类别对应的数据接收程序对象;
将所述预设程序对象的第一存储地址,更改为与所述预设程序对象属于相同分类类别的数据接收程序对象的第二存储地址。
可选的,所述将应用程序安装包中用于显示页面所需的全部资源文件和所述第一资源文件,进行做差处理,得到第二资源文件之前,还包括:
通过静态代码扫描方式,对所述应用程序安装包进行扫描分析,得到应用程序安装包中用于显示页面所需的全部资源文件。
可选的,所述将应用程序安装包中用于显示页面所需的全部资源文件和所述第一资源文件,进行做差处理,得到第二资源文件之后,还包括;
将所述第二资源文件存储至所述应用程序的后台服务器中,以便在所述应用程序处于网络正常连接状态的情况下,从所述后台服务器处获取所述第二资源文件。
可选的,所述高优先级页面包括需要在离线状态下正常显示的页面。
第二方面,提供了一种应用程序安装包的确定装置,所述装置包括:
获取模块,用于获取显示高优先级页面所需的资源文件,得到第一资源文件;
处理模块,用于将应用程序安装包中用于显示页面所需的全部资源文件和所述第一资源文件,进行做差处理,得到第二资源文件;
删除模块,用于删除所述应用程序安装包中的所述第二资源文件。
可选的,所述获取模块包括:
第一确定子模块,用于确定用于调用资源文件的预设程序对象;
更改子模块,用于将所述预设程序对象的第一存储地址更改为预先存储的数据接收程序对象的第二存储地址,以使所述应用程序基于所述第二存储地址调用所述数据接收程序对象;
接收子模块,用于响应于高优先级页面的显示指令,在所述数据接收程序对象的调用过程中,通过所述数据接收程序对象接收所述应用程序调用的资源文件的配置参数;
第二确定子模块,用于根据所述配置参数,确定第一资源文件。
可选的,所述第一确定子模块,具体用于对应用程序安装包中用于显示页面所需的全部资源文件进行分类,得到多个分类类别;针对每个分类类别,根据预先存储的分类类别与预设程序对象的对应关系,确定与该分类类别对应的程序对象,得到用于调用该分类类别的资源文件的预设程序对象;
所述更改子模块,具体用于针对每个分类类别,根据预先存储的分类类别与数据接收程序对象的对应关系,确定与该分类类别对应的数据接收程序对象;将所述预设程序对象的第一存储地址,更改为与所述预设程序对象属于相同分类类别的数据接收程序对象的第二存储地址。
可选的,所述装置还包括:
扫描模块,用于通过静态代码扫描方式,对所述应用程序安装包进行扫描分析,得到应用程序安装包中用于显示页面所需的全部资源文件。
可选的,所述装置还包括;
存储模块,用于将所述第二资源文件存储至所述应用程序的后台服务器中,以便在所述应用程序处于网络正常连接状态的情况下,从所述后台服务器处获取所述第二资源文件。
可选的,所述高优先级页面包括需要在离线状态下正常显示的页面。
第三方面,提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现任一第一方面所述的方法步骤。
第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现任一第一方面所述的方法步骤。
第五方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一第一方面所述的方法步骤。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:
本申请实施例提供的该方法,可以获取显示高优先级页面所需的资源文件,得到第一资源文件,然后,将应用程序安装包中用于显示页面所需的全部资源文件和第一资源文件,进行做差处理,得到第二资源文件。之后,再删除应用程序安装包中的第二资源文件。由于删除应用程序安装包中除高优先级页面外的其他页面的第二资源文件,因此,能够减小应用程序安装包的容量。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种应用程序安装包的确定方法的流程图;
图2为本申请实施例提供的另一种应用程序安装包的确定方法的流程图;
图3为本申请实施例提供的另一种应用程序安装包的确定方法的流程图;
图4为本申请实施例提供的一种应用程序安装包的确定装置的结构示意图;
图5为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供了一种应用程序安装包的确定方法,该方法可以应用于电子设备,电子设备可以是手机、平板电脑、笔记本电脑。
在应用程序的开发阶段,可以采用本申请实施例提供的应用程序安装包的确定方法,减少放置在应用程序安装包中的资源文件,从而减小应用程序安装包的容量。其中,资源文件可以是显示页面所需的图像、文本等。进一步的,通过发布容量减小后的应用程序安装包,能够增强用户下载和更新应用程序的意愿。
如图1所示,一种应用程序安装包的确定方法的具体处理过程包括:
步骤101、获取显示高优先级页面所需的资源文件,得到第一资源文件。
在实施中,在应用程序的开发阶段,开发人员可以对应用程序包含的多个页面进行分类,指定需要在离线状态下正常显示的页面为高优先级页面。例如,高优先级页面可以是应用程序的首页、“推荐”页面、“热点”页面、“我的”页面等一级页面、“我的收藏”页面和“观看历史”页面等二级页面。
电子设备可以通过多种方式获取显示高优先级页面所需的资源文件,在一种可行的实现方式中,电子设备本地可以存储有页面与资源文件的对应关系,电子设备可以在页面与资源文件的对应关系中,查找与高优先级页面对应的资源文件,然后,电子设备可以将查找到的资源文件作为第一资源文件。
在另一种可行的实现方式中,电子设备可以在测试运行应用程序的过程中,通过执行显示高优先级页面任务,确定显示高优先级页面所需的资源文件,得到第一资源文件,具体处理过程后续会进行详细说明。
步骤102、将应用程序安装包中用于显示页面所需的全部资源文件和第一资源文件,进行做差处理,得到第二资源文件。
在实施中,电子设备可以获取应用程序安装包中用于显示页面所需的全部资源文件,然后,电子设备可以将全部资源文件和第一资源文件进行做差处理。为了便于区分,将做差处理得到的资源文件称为第二资源文件。
例如,应用程序安装包中用于显示页面所需的全部资源文件为ZY1~ZY100,第一资源文件为ZY1~ZY10,电子设备可以将全部资源文件和第一资源文件进行做差处理,得到的资源文件为ZY11~ZY100,即,第二资源文件为ZY11~ZY100。
本申请实施例提供了一种电子设备获取应用程序安装包中用于显示页面所需的全部资源文件的实现方式:通过静态代码扫描方式,对应用程序安装包进行扫描分析,得到应用程序安装包中用于显示页面所需的全部资源文件。
电子设备通过静态代码扫描方式,获取全部资源文件的具体处理过程可以参照相关技术中,通过静态代码扫描脚本对应用程序安装包进行扫描分析,得到资源文件的处理过程,本申请不再赘述。
步骤103、删除应用程序安装包中的第二资源文件。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:
本申请实施例提供的该方法,可以获取显示高优先级页面所需的资源文件,得到第一资源文件,然后,将应用程序安装包中用于显示页面所需的全部资源文件和第一资源文件,进行做差处理,得到第二资源文件。之后,再删除应用程序安装包中的第二资源文件。由于针对除高优先级页面外的其他页面,确定显示其他页面所需的第二资源文件,删除应用程序安装包中的第二资源文件,因此,能够减小应用程序安装包的容量。
电子设备在运行应用程序的过程中,可以基于资源文件显示页面,资源文件存储于应用程序安装包中时,电子设备可以直接从本地获取资源文件。资源文件存储于应用程序的后台服务器时,电子设备需要向后台服务器发送数据获取请求,以获取资源文件。如果电子设备处于未连接到网络的离线状态,或者处于网络连接速度较慢的情况下,可能出现页面显示速度慢,用户体验差的问题。因此,有必要对资源文件的存储位置进行设置。
相关技术中,由开发人员设置每个资源文件的存储位置,存储位置为存储于应用程序安装包,或存储于后台服务器中。然而,随着应用程序安装包的版本更新,开发人员需要一一确认大量资源文件的存储位置,导致人力消耗和维护成本较高。采用本申请实施例提供的技术方案,能够自动设置资源文件的存储位置,在减少应用程序安装包容量的同时,能够极大的降低人力成本。
进一步的,通过对应用程序包含的多个页面进行分类,并基于页面的优先级确定在应用程序安装包中保留的资源文件,能够结合页面对应的业务功能,管理应用程序安装包中的资源文件,实现应用程序安装包容量的细粒度管理。
可选的,电子设备可以在测试运行应用程序的过程中,通过显示高优先级页面的方式,确定显示高优先级页面所需的资源文件,得到第一资源文件,基于此,本申请实施例提供了一种获取显示高优先级页面所需第一资源文件的实现方式,如图2所示,包括以下步骤:
步骤201、确定用于调用资源文件的预设程序对象。
其中,预设程序对象为用于调用资源文件的程序对象,程序对象包括类、方法、属性中至少一种。电子设备中可以存储有预设程序对象的标识。
在实施中,电子设备可以通过静态代码扫描方式,获取应用程序安装包包含的全部程序对象,然后,电子设备可以在全部程序对象中查找预设程序对象。在查找到预设程序对象后,电子设备可以根据预先存储的程序对象与存储地址的对应关系,确定预设程序对象对应的存储地址,得到第一存储地址。
步骤202、将预设程序对象的第一存储地址更改为预先存储的数据接收程序对象的第二存储地址。
在实施中,电子设备中可以预先设置有数据接收程序对象,为了便于区分,将数据接收程序对象的存储地址称为第二存储地址。
电子设备可以在确定预设程序对象后,将预设程序对象的第一存储地址更改为数据接收程序对象的第二存储地址。由此,应用程序可以基于第二存储地址调用数据接收程序对象,从而实现针对预设程序对象进行动态方法交换。在进行动态方法交换前,应用程序基于第一存储地址调用预设程序对象,在进行动态方法交换后,应用程序基于第二存储地址调用数据接收程序对象。
步骤203、响应于高优先级页面的显示指令,在数据接收程序对象的调用过程中,通过数据接收程序对象接收应用程序调用的资源文件的配置参数。
其中,配置参数可以是名称、标识、存储路径等,配置参数可以用于唯一标识资源文件。
在实施中,电子设备可以获取高优先级页面的显示指令,显示指令可以由开发人员发出,也可以由电子设备在将预设程序对象动态交换为数据接收程序对象后,自动生成。
响应于高优先级页面的显示指令,为调用显示高优先级页面所需的资源文件,电子设备可以基于第二存储地址调用数据接收程序对象。
由于应用程序在调用预设程序对象时,会向预设程序对象发送调用资源文件所需的配置参数,因此,在将预设程序对象动态交换为数据接收程序对象后,电子设备可以在应用程序基于第二存储地址调用数据接收程序对象的过程中,通过数据接收程序对象,接收应用程序调用资源文件所需的配置参数。
可选的,为了便于确定出高优先级页面所需的全部资源文件,电子设备可以在离线状态下,显示高优先级页面。
步骤204、根据配置参数,确定第一资源文件。
在实施中,电子设备中可以预先设置有配置参数与资源文件的对应关系,电子设备可以在配置参数与资源文件的对应关系中,将与接收到的配置参数对应的资源文件,作为第一资源文件。
本申请实施例中,电子设备可以确定用于调用资源文件的预设程序对象,然后,将预设程序对象的第一存储地址更改为预先存储的数据接收程序对象的第二存储地址。由此,响应于高优先级页面的显示指令,电子设备可以在数据接收程序对象的调用过程中,通过数据接收程序对象接收应用程序调用的资源文件的配置参数。然后,电子设备可以根据配置参数,确定第一资源文件。由于通过显示高优先级页面的方式,确定显示高优先级页面所需的第一资源文件,因此,可以方便、准确的确定出第一资源文件。
进一步的,在应用程序安装包中保存第一资源文件,并发布应用程序安装包,用户终端可以基于应用程序安装包安装应用程序。在运行应用程序的过程中,用户终端无需向应用程序的后台服务器请求第一资源文件,可以基于本地保存的第一资源文件,直接显示高优先级页面,因此,能够提高页面显示速度,从而能够提高用户体验。
可选的,针对资源文件的不同分类类别,可以采用相应分类类别的预设程序对象调用资源文件,基于此,本申请实施例还提供了一种电子设备确定第一资源文件的实现方式,如图3所示,包括以下步骤:
步骤301、对应用程序安装包中用于显示页面所需的全部资源文件进行分类,得到多个分类类别。
在实施中,电子设备可以对应用程序安装包中用于显示页面所需的全部资源文件进行分类,得到多个分类类别,分类类别可以是图像、文本、音频、视频、json(javascriptobject notation,对象简谱)文件等。
步骤302、针对每个分类类别,根据预先存储的分类类别与程序对象的对应关系,确定与该分类类别对应的程序对象,得到用于调用该分类类别的资源文件的预设程序对象。
在实施中,电子设备中可以预先存储有分类类别与程序对象的对应关系,电子设备可以针对每个分类类别,在分类类别与程序对象的对应关系中,查找与该分类类别对应的程序对象,得到用于调用该分类类别的资源文件的预设程序对象。
例如,针对分类类别“图像”,电子设备可以根据预先存储的分类类别与程序对象的对应关系,确定与该分类类别对应的程序对象,得到UIImage类的+(nullable UIImage*)imageNamed:(NSString*)name。然后,电子设备可以将程序对象UIImage类的+(nullableUIImage*)imageNamed:(NSString*)name,作为用于调用分类类别为“图像”的资源文件的预设程序对象。
类似的,针对分类类别“json文件”,电子设备可以根据预先存储的分类类别与程序对象的对应关系,确定与该分类类别对应的程序对象,得到NSBundle的pathForResource和pathsForResourcesOfType。然后,电子设备可以将程序对象NSBundle的pathForResource和pathsForResourcesOfType,作为用于调用分类类别为“json文件”的资源文件的预设程序对象。
步骤303、针对每个分类类别,根据预先存储的分类类别与数据接收程序对象的对应关系,确定与该分类类别对应的数据接收程序对象。
在实施中,电子设备中可以预先存储有分类类别与数据接收程序对象的对应关系,电子设备可以针对每个分类类别,在分类类别与数据接收程序对象的对应关系中,查找与该分类类别对应的数据接收程序对象。
例如,与分类类别“图像”对应的数据接收程序对象可以为myNewHookMethod1;与分类类别“json文件”对用的数据接收程序对象可以为myNewHookMethod2。
本申请实施例中,不同分类类别的数据接收程序对象可以由开发人员根据实际测试需求编写。
步骤304、将预设程序对象的第一存储地址,更改为与该预设程序对象属于相同分类类别的数据接收程序对象的第二存储地址。
在实施中,电子设备可以将某一分类类别的预设程序对象的第一存储地址,更改为该分类类别的数据接收程序对象的第二存储地址。
例如,电子设备可以将预设程序对象UIImage类的+(nullable UIImage*)imageNamed:(NSString*)name的第一存储地址,更改为与该预设程序对象属于相同分类类别“图像”的数据接收程序对象myNewHookMethod1的第二存储地址。
步骤305、响应于高优先级页面的显示指令,在数据接收程序对象的调用过程中,通过数据接收程序对象接收应用程序调用的资源文件的配置参数。
在实施中,此步骤的处理过程可以参照步骤203的处理过程,此处不再赘述。
步骤306、根据配置参数,确定第一资源文件。
在实施中,此步骤的处理过程可以参照步骤204的处理过程,此处不再赘述。
本申请实施例中,通过对应用程序安装包中的多个资源文件进行分类,按照分类类别确定预设程序对象,并将相应分类类别的预设程序对象的第一存储地址更改为数据接收程序对象的第二存储地址,可以确保获取到高优先级页面所需的多种资源文件,提高确定出的第一资源文件的准确性。
可选的,在确定第二资源文件之后,电子设备还可以将第二资源文件存储至应用程序的后台服务器中,以便在应用程序处于网络正常连接状态的情况下,从后台服务器处获取第二资源文件。
本申请实施例中,电子设备可以将确定出的第二资源文件,存储至应用程序的后台服务器中,由此,便于在应用程序处于网络正常连接状态的情况下,从后台服务器处获取第二资源文件。由此,按照页面的显示优先级,分配资源文件的存储位置,能够有效减少应用程序安装包的容量。
本申请实施例还提供了一种应用程序安装包的确定装置,如图4所示,所述装置包括:
获取模块410,用于获取显示高优先级页面所需的资源文件,得到第一资源文件;
处理模块420,用于将应用程序安装包中用于显示页面所需的全部资源文件和所述第一资源文件,进行做差处理,得到第二资源文件;
删除模块430,用于删除所述应用程序安装包中的所述第二资源文件。
可选的,所述获取模块包括:
第一确定子模块,用于确定用于调用资源文件的预设程序对象;
更改子模块,用于将所述预设程序对象的第一存储地址更改为预先存储的数据接收程序对象的第二存储地址,以使所述应用程序基于所述第二存储地址调用所述数据接收程序对象;
接收子模块,用于响应于高优先级页面的显示指令,在所述数据接收程序对象的调用过程中,通过所述数据接收程序对象接收所述应用程序调用的资源文件的配置参数;
第二确定子模块,用于根据所述配置参数,确定第一资源文件。
可选的,所述第一确定子模块,具体用于对应用程序安装包中用于显示页面所需的全部资源文件进行分类,得到多个分类类别;针对每个分类类别,根据预先存储的分类类别与预设程序对象的对应关系,确定与该分类类别对应的程序对象,得到用于调用该分类类别的资源文件的预设程序对象;
所述更改子模块,具体用于针对每个分类类别,根据预先存储的分类类别与数据接收程序对象的对应关系,确定与该分类类别对应的数据接收程序对象;将所述预设程序对象的第一存储地址,更改为与所述预设程序对象属于相同分类类别的数据接收程序对象的第二存储地址。
可选的,所述装置还包括:
扫描模块,用于通过静态代码扫描方式,对所述应用程序安装包进行扫描分析,得到应用程序安装包中用于显示页面所需的全部资源文件。
可选的,所述装置还包括;
存储模块,用于将所述第二资源文件存储至所述应用程序的后台服务器中,以便在所述应用程序处于网络正常连接状态的情况下,从所述后台服务器处获取所述第二资源文件。
可选的,所述高优先级页面包括需要在离线状态下正常显示的页面。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:
本申请实施例提供的该装置,可以获取显示高优先级页面所需的资源文件,得到第一资源文件,然后,将应用程序安装包中用于显示页面所需的全部资源文件和第一资源文件,进行做差处理,得到第二资源文件。之后,再删除应用程序安装包中的第二资源文件。由于删除应用程序安装包中除高优先级页面外的其他页面的第二资源文件,因此,能够减小应用程序安装包的容量。
本申请实施例还提供了一种电子设备,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,
存储器503,用于存放计算机程序;
处理器501,用于执行存储器503上所存放的程序时,实现如下步骤:
获取显示高优先级页面所需的资源文件,得到第一资源文件;
将应用程序安装包中用于显示页面所需的全部资源文件和所述第一资源文件,进行做差处理,得到第二资源文件;
删除所述应用程序安装包中的所述第二资源文件。
可选的,所述获取显示高优先级页面所需的资源文件,得到第一资源文件,包括:
确定用于调用资源文件的预设程序对象;
将所述预设程序对象的第一存储地址更改为预先存储的数据接收程序对象的第二存储地址,以使所述应用程序基于所述第二存储地址调用所述数据接收程序对象;
响应于高优先级页面的显示指令,在所述数据接收程序对象的调用过程中,通过所述数据接收程序对象接收所述应用程序调用的资源文件的配置参数;
根据所述配置参数,确定第一资源文件。
可选的,所述确定用于调用资源文件的预设程序对象,包括:
对应用程序安装包中用于显示页面所需的全部资源文件进行分类,得到多个分类类别;
针对每个分类类别,根据预先存储的分类类别与程序对象的对应关系,确定与该分类类别对应的程序对象,得到用于调用该分类类别的资源文件的预设程序对象;
所述将所述预设程序对象的第一存储地址更改为预先存储的数据接收程序对象的第二存储地址,包括:
针对每个分类类别,根据预先存储的分类类别与数据接收程序对象的对应关系,确定与该分类类别对应的数据接收程序对象;
将所述预设程序对象的第一存储地址,更改为与所述预设程序对象属于相同分类类别的数据接收程序对象的第二存储地址。
可选的,所述将应用程序安装包中用于显示页面所需的全部资源文件和所述第一资源文件,进行做差处理,得到第二资源文件之前,还包括:
通过静态代码扫描方式,对所述应用程序安装包进行扫描分析,得到应用程序安装包中用于显示页面所需的全部资源文件。
可选的,所述将应用程序安装包中用于显示页面所需的全部资源文件和所述第一资源文件,进行做差处理,得到第二资源文件之后,还包括;
将所述第二资源文件存储至所述应用程序的后台服务器中,以便在所述应用程序处于网络正常连接状态的情况下,从所述后台服务器处获取所述第二资源文件。
可选的,所述高优先级页面包括需要在离线状态下正常显示的页面。
上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述终端与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本申请实施例提供的上述技术方案与现有技术相比具有如下优点:
本申请实施例提供的该电子设备,可以获取显示高优先级页面所需的资源文件,得到第一资源文件,然后,将应用程序安装包中用于显示页面所需的全部资源文件和第一资源文件,进行做差处理,得到第二资源文件。之后,再删除应用程序安装包中的第二资源文件。由于删除应用程序安装包中除高优先级页面外的其他页面的第二资源文件,因此,能够减小应用程序安装包的容量。
在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述应用程序安装包的确定方法。
在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的应用程序安装包的确定方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
Claims (7)
1.一种应用程序安装包的确定方法,其特征在于,所述方法包括:
确定用于调用资源文件的预设程序对象,包括:对应用程序安装包中用于显示页面所需的全部资源文件进行分类,得到多个分类类别;针对每个分类类别,根据预先存储的分类类别与程序对象的对应关系,确定与该分类类别对应的程序对象,得到用于调用该分类类别的资源文件的预设程序对象;
将所述预设程序对象的第一存储地址更改为预先存储的数据接收程序对象的第二存储地址,以使所述应用程序基于所述第二存储地址调用所述数据接收程序对象,包括:针对每个分类类别,根据预先存储的分类类别与数据接收程序对象的对应关系,确定与该分类类别对应的数据接收程序对象;将所述预设程序对象的第一存储地址,更改为与所述预设程序对象属于相同分类类别的数据接收程序对象的第二存储地址;
响应于高优先级页面的显示指令,在所述数据接收程序对象的调用过程中,通过所述数据接收程序对象接收所述应用程序调用的资源文件的配置参数;
根据所述配置参数,确定第一资源文件;
将应用程序安装包中用于显示页面所需的全部资源文件和所述第一资源文件,进行做差处理,得到第二资源文件;
删除所述应用程序安装包中的所述第二资源文件。
2.根据权利要求1所述的方法,其特征在于,所述将应用程序安装包中用于显示页面所需的全部资源文件和所述第一资源文件,进行做差处理,得到第二资源文件之前,还包括:
通过静态代码扫描方式,对所述应用程序安装包进行扫描分析,得到应用程序安装包中用于显示页面所需的全部资源文件。
3.根据权利要求1所述的方法,其特征在于,所述将应用程序安装包中用于显示页面所需的全部资源文件和所述第一资源文件,进行做差处理,得到第二资源文件之后,还包括;
将所述第二资源文件存储至所述应用程序的后台服务器中,以便在所述应用程序处于网络正常连接状态的情况下,从所述后台服务器处获取所述第二资源文件。
4.根据权利要求1所述的方法,其特征在于,所述高优先级页面包括需要在离线状态下正常显示的页面。
5.一种应用程序安装包的确定装置,其特征在于,所述装置包括:
获取模块,所述获取模块包括:第一确定子模块,用于确定用于调用资源文件的预设程序对象,包括:对应用程序安装包中用于显示页面所需的全部资源文件进行分类,得到多个分类类别;针对每个分类类别,根据预先存储的分类类别与程序对象的对应关系,确定与该分类类别对应的程序对象,得到用于调用该分类类别的资源文件的预设程序对象;更改子模块,用于将所述预设程序对象的第一存储地址更改为预先存储的数据接收程序对象的第二存储地址,以使所述应用程序基于所述第二存储地址调用所述数据接收程序对象,包括:针对每个分类类别,根据预先存储的分类类别与数据接收程序对象的对应关系,确定与该分类类别对应的数据接收程序对象;将所述预设程序对象的第一存储地址,更改为与所述预设程序对象属于相同分类类别的数据接收程序对象的第二存储地址;接收子模块,用于响应于高优先级页面的显示指令,在所述数据接收程序对象的调用过程中,通过所述数据接收程序对象接收所述应用程序调用的资源文件的配置参数;第二确定子模块,用于根据所述配置参数,确定第一资源文件;
处理模块,用于将应用程序安装包中用于显示页面所需的全部资源文件和所述第一资源文件,进行做差处理,得到第二资源文件;
删除模块,用于删除所述应用程序安装包中的所述第二资源文件。
6.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-4任一所述的方法步骤。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010344049.4A CN111538510B (zh) | 2020-04-27 | 2020-04-27 | 一种应用程序安装包的确定方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010344049.4A CN111538510B (zh) | 2020-04-27 | 2020-04-27 | 一种应用程序安装包的确定方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111538510A CN111538510A (zh) | 2020-08-14 |
CN111538510B true CN111538510B (zh) | 2023-09-01 |
Family
ID=71978967
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010344049.4A Active CN111538510B (zh) | 2020-04-27 | 2020-04-27 | 一种应用程序安装包的确定方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111538510B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105915623A (zh) * | 2016-05-20 | 2016-08-31 | 努比亚技术有限公司 | 应用安装包处理装置及方法 |
CN106598584A (zh) * | 2016-12-08 | 2017-04-26 | 广州华多网络科技有限公司 | 一种处理资源文件的方法、装置和系统 |
CN108132814A (zh) * | 2017-12-22 | 2018-06-08 | 平安养老保险股份有限公司 | 应用程序的页面加载方法、装置、计算机设备和存储介质 |
CN108984207A (zh) * | 2018-06-14 | 2018-12-11 | 珠海金山网络游戏科技有限公司 | 一种安装包无效资源文件检测的方法 |
CN109814884A (zh) * | 2018-12-27 | 2019-05-28 | 珠海西山居互动娱乐科技有限公司 | 一种根据游戏资源类型进行资源管理的方法及系统 |
-
2020
- 2020-04-27 CN CN202010344049.4A patent/CN111538510B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105915623A (zh) * | 2016-05-20 | 2016-08-31 | 努比亚技术有限公司 | 应用安装包处理装置及方法 |
CN106598584A (zh) * | 2016-12-08 | 2017-04-26 | 广州华多网络科技有限公司 | 一种处理资源文件的方法、装置和系统 |
CN108132814A (zh) * | 2017-12-22 | 2018-06-08 | 平安养老保险股份有限公司 | 应用程序的页面加载方法、装置、计算机设备和存储介质 |
CN108984207A (zh) * | 2018-06-14 | 2018-12-11 | 珠海金山网络游戏科技有限公司 | 一种安装包无效资源文件检测的方法 |
CN109814884A (zh) * | 2018-12-27 | 2019-05-28 | 珠海西山居互动娱乐科技有限公司 | 一种根据游戏资源类型进行资源管理的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111538510A (zh) | 2020-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108322351B (zh) | 生成拓扑图的方法和装置、故障确定方法和装置 | |
CN110012217B (zh) | 采集分辨率的确定方法、装置及电子设备 | |
CN109491763B (zh) | 一种系统部署方法、装置及电子设备 | |
CN108156252B (zh) | 一种数据访问方法、装置、服务器及客户端 | |
CN107644075B (zh) | 收集页面信息的方法和装置 | |
CN113141405A (zh) | 服务访问方法、中间件系统、电子设备和存储介质 | |
CN111666516A (zh) | 页面加载方法、装置、电子设备及存储介质 | |
CN111382206B (zh) | 一种数据存储方法及装置 | |
CN109446445B (zh) | 一种资源获取方法及装置 | |
CN109032693B (zh) | 一种加载展示信息方法、装置、电子设备及可读存储介质 | |
CN114282288A (zh) | 轴网识别方法、装置、设备及存储介质 | |
CN112115103A (zh) | 文件地址显示方法、装置、电子设备及可读存储介质 | |
CN111736776B (zh) | 一种数据存储、读取方法及装置 | |
CN111783010B (zh) | 网页空白页面监测方法、装置、终端及存储介质 | |
CN111538510B (zh) | 一种应用程序安装包的确定方法、装置及电子设备 | |
CN111367606A (zh) | 一种应用程序页面的显示方法、装置、终端及介质 | |
CN109697166B (zh) | 一种测试数据准备方法及相关装置 | |
CN111124545A (zh) | 应用程序启动方法、装置、电子设备及存储介质 | |
CN107766232B (zh) | 一种插件管理方法及装置 | |
CN112433778A (zh) | 一种移动设备页面显示方法、装置、电子设备及存储介质 | |
CN110753082B (zh) | 服务调用方法及终端设备 | |
CN109446462B (zh) | 基于页面的数据监控处理方法、装置、设备和存储介质 | |
CN107621903B (zh) | 一种双触摸屏设备及其响应控制方法 | |
CN111736973A (zh) | 一种服务启动方法、装置、服务器及存储介质 | |
CN111309410B (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 |