技术领域technical field
本发明属于移动终端技术领域,尤其涉及一种提高移动终端首次开机速度的方法及装置。The invention belongs to the technical field of mobile terminals, and in particular relates to a method and a device for increasing the first boot speed of a mobile terminal.
背景技术Background technique
随着移动终端及互联网技术的不断发展,智能手机、平板电脑等移动终端产品在人们生活中占据着越来越重要的地位。为了保证移动终端产品的稳定性,在产品出厂前,厂商一般都会在刷机后对产品进行测试,并在测试结束后清除相关数据,释放被占用的存储资源。但正是由于这种清除操作,使得用户在购买了产品后首次开机时,系统在安装应用程序之前,还需要将应用程序安装包中的相应文件进行优化或转换,这种转换非常耗时,从而导致开机速度缓慢。With the continuous development of mobile terminals and Internet technologies, mobile terminal products such as smartphones and tablet computers are playing an increasingly important role in people's lives. In order to ensure the stability of mobile terminal products, before the product leaves the factory, the manufacturer generally tests the product after flashing, and clears the relevant data after the test to release the occupied storage resources. But it is precisely because of this clearing operation that when the user starts the product for the first time after purchasing the product, the system needs to optimize or convert the corresponding files in the application installation package before installing the application. This conversion is very time-consuming. This results in a slow boot.
发明内容Contents of the invention
本发明提供一种提高移动终端首次开机速度的方法及装置,用以提高移动终端首次开机的速度。The present invention provides a method and a device for increasing the speed of starting up a mobile terminal for the first time, so as to increase the speed of starting up a mobile terminal for the first time.
本发明第一方面提供一种提高移动终端首次开机速度的方法,所述方法包括:接收刷机指令,执行刷机操作;当检测到所述刷机操作结束时,重启移动终端;开机后触发程序安装任务,提取内置的各应用程序的安装包中的虚拟机可执行程序文件并转换为指定格式的目标程序文件,加载所述目标程序文件;触发测试任务,按照指定的测试脚本进行系统测试;当检测到测试结束时,清除缓存的所有数据文件中除所述目标程序文件之外的其他文件,使得所述移动终端在下一次开机时通过加载所述目标程序文件安装所述应用程序。The first aspect of the present invention provides a method for improving the first boot speed of a mobile terminal. The method includes: receiving a flashing command and performing a flashing operation; when it is detected that the flashing operation is completed, restarting the mobile terminal; triggering a program installation task after booting , extract the virtual machine executable program file in the installation package of each built-in application program and convert it into a target program file in a specified format, load the target program file; trigger a test task, and perform a system test according to a specified test script; when the detection At the end of the test, clear all cached data files except the target program file, so that the mobile terminal will install the application program by loading the target program file when it is turned on next time.
结合第一方面,在第一方面的第一种可能的实现方式中,所述提取内置的各应用程序的安装包中的虚拟机可执行程序文件并转换为指定格式的目标程序文件包括:提取内置的各所述应用程序的安装包中的Dex文件;将所述Dex文件转换为Oat文件。With reference to the first aspect, in the first possible implementation of the first aspect, the extracting the virtual machine executable program files in the installation packages of the built-in applications and converting them into target program files in a specified format includes: extracting The Dex file in the installation package of each of the built-in applications; the Dex file is converted into an Oat file.
结合第一方面,在第一方面的第二种可能的实现方式中,所述提取内置的各应用程序的安装包中的虚拟机可执行程序文件并转换为指定格式的目标程序文件包括:提取内置的各所述应用程序的安装包中的虚拟机可执行程序文件;判断系统使用的虚拟机是否能够解析所述虚拟机可执行程序文件;若不能够解析,则将所述虚拟机可执行程序文件转换为所述虚拟机能够解析的对应格式的目标程序文件;若能够解析,则将所述虚拟机可执行程序文件转换为优化格式的目标程序文件。With reference to the first aspect, in the second possible implementation of the first aspect, the extracting the virtual machine executable program files in the installation packages of the built-in applications and converting them into target program files in a specified format includes: extracting The virtual machine executable program file in the installation package of each described application program built in; Whether the virtual machine used by the judgment system can resolve the virtual machine executable program file; If it cannot be resolved, then the virtual machine executable program file The program file is converted into an object program file in a corresponding format that the virtual machine can parse; if it can be parsed, the virtual machine executable program file is converted into an object program file in an optimized format.
结合第一方面、第一方面的第一种可能、或者第一方面的第二种可能,在第一方面的第三种可能的实现方式中,所述触发测试任务,按照指定的测试脚本进行系统测试之前包括:获取各所述应用程序的安装包的特征信息及各所述应用程序的安装包各自对应的目标程序文件的特征信息;根据所述特征信息,生成目标文件列表。In combination with the first aspect, the first possibility of the first aspect, or the second possibility of the first aspect, in a third possible implementation of the first aspect, the trigger test task is performed according to a specified test script Before the system test, it includes: obtaining the feature information of the installation packages of the application programs and the feature information of the target program files corresponding to the installation packages of the application programs; and generating a list of target files according to the feature information.
结合第一方面的第三种可能,在第一方面的第四种可能的实现方式中,所述清除缓存的所有数据文件中除所述目标程序文件之外的其他文件包括:获取缓存的所有数据文件的特征信息,逐一将各所述数据文件的特征信息与所述目标文件列表中的特征信息进行匹配;若所述数据文件的特征信息与所述目标文件列表中的特征信息相匹配,则保留所述数据文件;若所述数据文件的特征信息与所述目标文件列表中的特征信息不匹配,则清除所述数据文件。With reference to the third possibility of the first aspect, in a fourth possible implementation manner of the first aspect, the clearing of all cached data files except the target program file includes: obtaining all cached The feature information of the data files, matching the feature information of each of the data files with the feature information in the target file list one by one; if the feature information of the data files matches the feature information in the target file list, Then keep the data file; if the characteristic information of the data file does not match the characteristic information in the target file list, then clear the data file.
结合第一方面的第四种可能,在第一方面的第五种可能的实现方式中,所述特征信息包括:名称和哈希值;则所述获取各所述应用程序的安装包的特征信息及各所述应用程序的安装包各自对应的目标程序文件的特征信息包括:获取各所述应用程序的安装包的名称及各所述应用程序的安装包各自对应的目标程序文件的名称;分别对各所述应用程序的安装包及各所述应用程序的安装包各自对应的目标程序文件进行哈希运算,得到各所述应用程序的安装包的哈希值及各所述应用程序的安装包各自对应的目标程序文件的哈希值;所述获取缓存的所有数据文件的特征信息,包括:获取缓存的所有数据文件的名称;对各所述数据文件进行哈希运算,得到各所述数据文件的哈希值。With reference to the fourth possibility of the first aspect, in a fifth possible implementation of the first aspect, the feature information includes: a name and a hash value; The information and the feature information of the target program files corresponding to the respective installation packages of the application programs include: obtaining the names of the installation packages of the respective application programs and the names of the target program files corresponding to the respective installation packages of the application programs; performing hash operations on the installation packages of the application programs and the target program files corresponding to the installation packages of the application programs respectively, to obtain the hash values of the installation packages of the application programs and the hash values of the installation packages of the application programs. The hash value of the corresponding target program file of the installation package; the feature information of all data files obtained in the cache includes: obtaining the names of all data files in the cache; performing a hash operation on each of the data files to obtain each The hash value of the data file mentioned above.
本发明第二方面提供一种提高移动终端首次开机速度的装置,包括:The second aspect of the present invention provides a device for increasing the first boot speed of a mobile terminal, including:
刷机模块,用于接收刷机指令,执行刷机操作;重启模块,用于当检测到所述刷机操作结束时,重启移动终端;转换模块,用于在开机后触发程序安装任务,提取内置的各应用程序的安装包中的虚拟机可执行程序文件并转换为指定格式的目标程序文件,加载所述目标程序文件;测试模块,用于触发测试任务,按照指定的测试脚本进行系统测试;清除模块,用于当检测到测试结束时,清除缓存的所有数据文件中除所述目标程序文件之外的其他文件,使得所述移动终端在下一次开机时通过加载所述目标程序文件安装所述应用程序。The flashing module is used to receive the flashing instruction and execute the flashing operation; the restart module is used to restart the mobile terminal when it is detected that the flashing operation is over; the conversion module is used to trigger the program installation task after booting and extract the built-in applications The virtual machine executable program file in the program installation package is converted into a target program file in a specified format, and the target program file is loaded; the test module is used to trigger a test task and perform system testing according to a specified test script; the clearing module, When it is detected that the end of the test is detected, all cached data files except the target program file are cleared, so that the mobile terminal installs the application program by loading the target program file when the mobile terminal is turned on next time.
结合第二方面,在第二方面的第一种可能的实现方式中,所述转换模块包括:提取子模块,用于提取内置的各所述应用程序的安装包中的Dex文件;第一转换子模块,用于将所述Dex文件转换为Oat文件。With reference to the second aspect, in the first possible implementation of the second aspect, the conversion module includes: an extraction submodule, configured to extract the built-in Dex file in the installation package of each of the application programs; the first conversion A submodule for converting the Dex file into an Oat file.
结合第二方面的第一种可能,在第二方面的第二种可能的实现方式中所述转换模块还包括:判断子模块,用于判断系统使用的虚拟机是否能够解析所述虚拟机可执行程序文件;第二转换子模块,用于若所述判断子模块判断所述系统使用的虚拟机不能够解析所述虚拟机可执行程序文件,则将所述虚拟机可执行程序文件转换为所述虚拟机能够解析的对应格式的目标程序文件;第三转换子模块,用于若所述判断子模块判断所述系统使用的虚拟机能够解析所述虚拟机可执行程序文件,则将所述虚拟机可执行程序文件转换为优化格式的目标程序文件。In combination with the first possibility of the second aspect, in the second possible implementation manner of the second aspect, the conversion module further includes: a judging submodule, configured to judge whether the virtual machine used by the system can resolve the Executing the program file; the second conversion submodule is used to convert the executable program file of the virtual machine into The target program file in the corresponding format that the virtual machine can parse; the third conversion submodule is used to convert the executable program file of the virtual machine if the judging submodule judges that the virtual machine used by the system can parse the virtual machine executable program file The virtual machine executable program file is converted into an optimized format target program file.
结合第二方面、第二方面的第一种可能、或者第二方面的第二种可能,在第二方面的第三种可能的实现方式中,所述装置还包括:获取模块,用于获取各所述应用程序的安装包的特征信息及各所述应用程序的安装包各自对应的目标程序文件的特征信息;列表生成模块,用于根据所述特征信息,生成目标文件列表。With reference to the second aspect, the first possibility of the second aspect, or the second possibility of the second aspect, in a third possible implementation manner of the second aspect, the device further includes: an acquiring module, configured to acquire The characteristic information of the installation package of each application program and the characteristic information of the target program file corresponding to each installation package of the application program; the list generation module is used to generate the target file list according to the characteristic information.
结合第二方面的第三种可能,在第二方面的第四种可能的实现方式中,所述清除模块包括:获取子模块,用于获取缓存的所有数据文件的特征信息;匹配子模块,用于逐一将各所述数据文件的特征信息与所述目标文件列表中的特征信息进行匹配;清除子模块,用于若所述数据文件的特征信息与所述目标文件列表中的特征信息相匹配,则保留所述数据文件,以及若所述数据文件的特征信息与所述目标文件列表中的特征信息不匹配,则清除所述数据文件。In combination with the third possibility of the second aspect, in a fourth possible implementation manner of the second aspect, the clearing module includes: an acquisition submodule, configured to acquire feature information of all cached data files; a matching submodule, It is used to match the feature information of each of the data files with the feature information in the target file list one by one; the clearing submodule is used to match the feature information of the data files with the feature information in the target file list. match, keep the data file, and if the feature information of the data file does not match the feature information in the target file list, clear the data file.
结合第二方面的第四种可能,在第二方面的第五种可能的实现方式中,所述特征信息包括:名称和哈希值;则所述获取模块,还用于获取各所述应用程序的安装包的名称及各所述应用程序的安装包各自对应的目标程序文件的名称,以及分别对各所述应用程序的安装包及各所述应用程序的安装包各自对应的目标程序文件进行哈希运算,得到各所述应用程序的安装包的哈希值及各所述应用程序的安装包各自对应的目标程序文件的哈希值;所述获取子模块,还用于获取缓存的所有数据文件的名称,以及对各所述数据文件进行哈希运算,得到各所述数据文件的哈希值。With reference to the fourth possibility of the second aspect, in a fifth possible implementation of the second aspect, the feature information includes: a name and a hash value; then the acquiring module is further configured to acquire each of the application The name of the installation package of the program and the name of the target program file corresponding to each of the installation packages of the application program, and the target program file corresponding to the installation package of each of the application programs and the installation package of each of the application programs respectively Perform a hash operation to obtain the hash value of the installation package of each of the application programs and the hash value of the target program file corresponding to the installation package of each of the application programs; the acquisition submodule is also used to obtain the cached The names of all the data files, and performing a hash operation on each of the data files to obtain a hash value of each of the data files.
从上述本发明实施例可知,本发明通过在出厂前的系统测试阶段将应用程序的安装包中的虚拟机可执行程序文件转换为指定格式的目标程序文件,并在完成测试后将该目标程序文件有针对性地予以保留,使得移动终端在用户购买后首次开机时,可通过直接加载目标程序文件安装各应用程序,从而省去了开机时提取Dex文件并转化为目标程序文件的过程,因此相较于现有技术,本发明可加快开机速度,提高开机效率。As can be seen from the above-mentioned embodiments of the present invention, the present invention converts the virtual machine executable program file in the installation package of the application program into a target program file in a specified format during the system test stage before leaving the factory, and converts the target program file after the test is completed. The files are reserved in a targeted manner, so that when the mobile terminal is turned on for the first time after the user purchases it, each application can be installed by directly loading the target program file, thereby eliminating the need to extract the Dex file and convert it into the target program file. Compared with the prior art, the present invention can speed up the start-up speed and improve the start-up efficiency.
附图说明Description of drawings
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the following will briefly introduce the drawings that need to be used in the description of the embodiments or the prior art. Obviously, the accompanying drawings in the following description are only These are some embodiments of the present invention. For those skilled in the art, other drawings can also be obtained according to these drawings on the premise of not paying creative efforts.
图1为一种移动终端的结构框图;Fig. 1 is a structural block diagram of a mobile terminal;
图2是本发明第一实施例提供的提高移动终端首次开机速度的方法的实现流程示意图;Fig. 2 is a schematic diagram of the implementation flow of the method for improving the first boot speed of the mobile terminal provided by the first embodiment of the present invention;
图3是本发明第二实施例提供的提高移动终端首次开机速度的方法的实现流程示意图;Fig. 3 is a schematic diagram of the implementation flow of the method for improving the first boot speed of the mobile terminal provided by the second embodiment of the present invention;
图4是本发明第三实施例提供的提高移动终端首次开机速度的装置的结构示意图;FIG. 4 is a schematic structural diagram of a device for improving the first boot speed of a mobile terminal provided by a third embodiment of the present invention;
图5是本发明第四实施例提供的提高移动终端首次开机速度的装置的结构示意图。Fig. 5 is a schematic structural diagram of an apparatus for increasing the first boot speed of a mobile terminal provided by a fourth embodiment of the present invention.
具体实施方式Detailed ways
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。In order to make the purpose, features and advantages of the present invention more obvious and understandable, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described The embodiments are only some of the embodiments of the present invention, but not all of them. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without making creative efforts belong to the protection scope of the present invention.
图1示出了一种移动终端的结构框图。本发明实施例提供的提高移动终端首次开机速度的方法可应用于如图1所示的移动终端10中,移动终端10可以但不限于包括:安装有Android(安卓)或类似操作系统的智能手机、平板电脑、智能穿戴设备等。Fig. 1 shows a structural block diagram of a mobile terminal. The method for improving the first boot speed of the mobile terminal provided by the embodiment of the present invention can be applied to the mobile terminal 10 shown in Figure 1, the mobile terminal 10 can include, but is not limited to: smart phones with Android (Android) or similar operating systems installed , tablets, smart wearable devices, etc.
如图1所示,移动终端10包括存储器101、存储控制器102,一个或多个(图中仅示出一个)处理器103、外设接口104、射频模块105、按键模块106、音频模块107以及触控屏幕108。这些组件通过一条或多条通讯总线/信号线109相互通讯。As shown in Figure 1, the mobile terminal 10 includes a memory 101, a storage controller 102, one or more (only one is shown in the figure) processors 103, a peripheral interface 104, a radio frequency module 105, a button module 106, an audio module 107 and a touch screen 108 . These components communicate with each other via one or more communication buses/signal lines 109 .
可以理解,图1所示的结构仅为示意,其并不对移动终端的结构造成限定。移动终端10还可包括比图1所示更多或者更少的组件,或者具有与图1所示不同的配置。图1所示的各组件可以采用硬件、软件或其组合实现。It can be understood that the structure shown in FIG. 1 is only for illustration, and does not limit the structure of the mobile terminal. The mobile terminal 10 may also include more or fewer components than those shown in FIG. 1 , or have a different configuration than that shown in FIG. 1 . Each component shown in FIG. 1 may be implemented by hardware, software or a combination thereof.
存储器101可用于存储软件程序以及模块,如本发明实施例中的提高移动终端首次开机速度的方法及装置对应的程序指令/模块,处理器103通过运行存储在存储器101内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的提高移动终端首次开机速度的方法。The memory 101 can be used to store software programs and modules, such as program instructions/modules corresponding to the method and device for improving the first boot speed of a mobile terminal in the embodiment of the present invention, and the processor 103 runs the software programs and modules stored in the memory 101, In this way, various functional applications and data processing are executed, that is, the above-mentioned method for improving the first boot speed of the mobile terminal is realized.
存储器101可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器101可进一步包括相对于处理器103远程设置的存储器,这些远程存储器可以通过网络连接至移动终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。处理器103以及其他可能的组件对存储器101的访问可在存储控制器102的控制下进行。The memory 101 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some examples, the memory 101 may further include a memory that is remotely located relative to the processor 103, and these remote memories may be connected to the mobile terminal 10 through a network. Examples of the aforementioned networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof. Access to the memory 101 by the processor 103 and possibly other components may be under the control of the memory controller 102 .
外设接口104将各种输入/输入装置耦合至CPU以及存储器101。处理器103运行存储器101内的各种软件、指令以执行移动终端10的各种功能以及进行数据处理。The peripheral interface 104 couples various input/output devices to the CPU and the memory 101 . The processor 103 runs various software and instructions in the memory 101 to execute various functions of the mobile terminal 10 and perform data processing.
在一些实施例中,外设接口104,处理器103以及存储控制器102可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。In some embodiments, peripheral interface 104, processor 103, and memory controller 102 may be implemented in a single chip. In some other instances, they can be implemented by independent chips respectively.
射频模块105用于接收以及发送电磁波,实现电磁波与电信号的相互转换,从而与通讯网络或者其他设备进行通讯。射频模块105可包括各种现有的用于执行这些功能的电路元件,例如,天线、射频收发器、数字信号处理器、加密/解密芯片、用户身份模块(SIM)卡、存储器等等。射频模块105可与各种网络如互联网、企业内部网、预置类型的无线网络进行通讯或者通过预置类型的无线网络与其他设备进行通讯。上述的预置类型的无线网络可包括蜂窝式电话网、无线局域网或者城域网。上述的预置类型的无线网络可以使用各种通信标准、协议及技术,包括但并不限于全球移动通信系统(Global System for MobileCommunication,GSM),增强型移动通信技术(Enhanced Data GSM Environment,EDGE),宽带码分多址技术(Wideband Code Division Multiple Access,W-CDMA),码分多址技术(Code Division Access,CDMA),时分多址技术(Time Division Multiple Access,TDMA),蓝牙,无线保真技术(Wireless-Fidelity,WiFi)(如美国电气和电子工程师协会标准IEEE802.11a、IEEE 802.11b、IEEE802.11g和/或IEEE 802.11n),网络电话(Voice overInternet Protocal,VoIP),全球微波互联接入(Worldwide Interoperability forMicrowave Access,Wi-Max),其他用于邮件、即时通讯及短消息的协议,以及任何其他合适的通讯协议。The radio frequency module 105 is used to receive and send electromagnetic waves, realize mutual conversion between electromagnetic waves and electrical signals, and communicate with communication networks or other devices. The radio frequency module 105 may include various existing circuit elements for performing these functions, such as antenna, radio frequency transceiver, digital signal processor, encryption/decryption chip, Subscriber Identity Module (SIM) card, memory and so on. The radio frequency module 105 can communicate with various networks such as the Internet, an intranet, a preset type of wireless network, or communicate with other devices through a preset type of wireless network. The aforementioned preset type of wireless network may include a cellular telephone network, a wireless local area network or a metropolitan area network. The aforementioned preset type of wireless network can use various communication standards, protocols and technologies, including but not limited to Global System for Mobile Communication (GSM), Enhanced Data GSM Environment (EDGE) , Wideband Code Division Multiple Access (W-CDMA), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Bluetooth, Wi-Fi Technology (Wireless-Fidelity, WiFi) (such as IEEE802.11a, IEEE 802.11b, IEEE802.11g and/or IEEE 802.11n), Internet telephony (Voice over Internet Protocol, VoIP), global microwave interconnection In (Worldwide Interoperability for Microwave Access, Wi-Max), other protocols used for mail, instant messaging and short messages, and any other suitable communication protocols.
按键模块106提供用户向移动终端进行输入的接口,用户可以通过按下不同的按键以使移动终端10执行不同的功能。The button module 106 provides an interface for the user to input to the mobile terminal, and the user can press different buttons to make the mobile terminal 10 perform different functions.
音频模块107向用户提供音频接口,其可包括一个或多个麦克风、一个或者多个扬声器以及音频电路。音频电路从外设接口104处接收声音数据,将声音数据转换为电信息,将电信息传输至扬声器。扬声器将电信息转换为人耳能听到的声波。音频电路还从麦克风处接收电信息,将电信号转换为声音数据,并将声音数据传输至外设接口104中以进行进一步的处理。音频数据可以从存储器101处或者通过射频模块105获取。此外,音频数据也可以存储至存储器101中或者通过射频模块105进行发送。在一些实例中,音频模块107还可包括一个耳机播孔,用于向耳机或者其他设备提供音频接口。The audio module 107 provides an audio interface to the user, which may include one or more microphones, one or more speakers, and audio circuitry. The audio circuit receives sound data from the peripheral interface 104, converts the sound data into electrical information, and transmits the electrical information to the speaker. Speakers convert electrical information into sound waves that can be heard by the human ear. The audio circuit also receives electrical information from the microphone, converts the electrical signal into sound data, and transmits the sound data to the peripheral interface 104 for further processing. Audio data can be obtained from the memory 101 or through the radio frequency module 105 . In addition, the audio data can also be stored in the memory 101 or sent through the radio frequency module 105 . In some examples, the audio module 107 may further include an earphone jack for providing an audio interface for earphones or other devices.
触控屏幕108在移动终端与用户之间同时提供一个输出及输入界面。具体地,触控屏幕108向用户显示视频输出,这些视频输出的内容可包括文字、图形、视频、及其任意组合。一些输出结果是对应于一些用户界面对象。触控屏幕108还接收用户的输入,例如用户的点击、滑动等手势操作,以便用户界面对象对这些用户的输入做出响应。检测用户输入的技术可以是基于电阻式、电容式或者其他任意可能的触控检测技术。触控屏幕108显示单元的具体实例包括但并不限于液晶显示器或发光聚合物显示器。The touch screen 108 simultaneously provides an output and input interface between the mobile terminal and the user. Specifically, the touch screen 108 displays video output to the user, and the content of the video output may include text, graphics, video, and any combination thereof. Some output results correspond to some user interface objects. The touch screen 108 also receives user input, such as user gesture operations such as clicking and sliding, so that the user interface objects respond to these user inputs. The technique for detecting user input may be based on resistive, capacitive or any other possible touch detection techniques. Specific examples of the display unit of the touch screen 108 include, but are not limited to, liquid crystal displays or light emitting polymer displays.
请参阅图2,图2为本发明第一实施例提供的提高移动终端首次开机速度的方法的实现流程示意图。该方法可应用于如图1所示的移动终端10中,主要包括以下步骤:Please refer to FIG. 2 . FIG. 2 is a schematic flowchart of the implementation of the method for increasing the speed of the first boot of the mobile terminal provided by the first embodiment of the present invention. This method can be applied in the mobile terminal 10 as shown in Figure 1, mainly comprises the following steps:
S201、接收刷机指令,执行刷机操作;S201. Receive a flashing instruction, and perform a flashing operation;
接收用户触发的刷机指令或者接收计算机发送的刷机指令,对移动终端执行刷机操作。其中,刷机是指为移动终端重装操作系统。具体地,重装的操作系统可以但不限于包括:各种版本的Android系统或类似操作系统。移动终端可进入刷机模式,如recovery模式或fastfoot模式,将刷机包中的操作系统文件以及待安装的各应用程序的安装文件写入移动终端。该应用程序可以包括系统应用程序和第三方应用程序。Receive the flashing instruction triggered by the user or receive the flashing instruction sent by the computer, and execute the flashing operation on the mobile terminal. Wherein, flashing refers to reinstalling the operating system for the mobile terminal. Specifically, the reinstalled operating system may include, but is not limited to: various versions of the Android system or similar operating systems. The mobile terminal can enter a flashing mode, such as recovery mode or fastfoot mode, and write the operating system files in the flashing package and the installation files of each application program to be installed into the mobile terminal. The applications can include system applications and third-party applications.
S202、当检测到刷机操作结束时,重启移动终端;S202. Restart the mobile terminal when it is detected that the flashing operation ends;
S203、开机后触发程序安装任务,提取内置的各应用程序的安装包中的虚拟机可执行程序文件并转换为指定格式的目标程序文件,加载目标程序文件;S203. Trigger the program installation task after booting, extract the virtual machine executable program file in the installation package of each built-in application program and convert it into a target program file in a specified format, and load the target program file;
内置的各应用程序的安装包,即,之前刷机时写入的各应用程序的安装文件。不同类型的操作系统,对应的应用程序的安装包的格式也不相同,以Android系统为例,Android系统的应用程序安装包的格式为APK(AndroidPackage,Android安装包)格式,APK文件实际上是一个压缩的ZIP文件,是把Android SDK编译的工程打包后形成的一个安装程序文件,其中包括资源文件、程序全局配置文件以及Dex文件等等。Dex文件是Dalvik VM executes(Dalvik虚拟机可执行)文件的全称,即Android Dalvik虚拟机的可执行程序。The built-in installation package of each application program, that is, the installation file of each application program written during the previous flashing. Different types of operating systems have different formats of corresponding application installation packages. Taking the Android system as an example, the format of the application installation package of the Android system is the APK (Android Package, Android installation package) format, and the APK file is actually A compressed ZIP file is an installer file formed by packaging the project compiled by the Android SDK, including resource files, program global configuration files, and Dex files. The Dex file is the full name of the Dalvik VM executes (Dalvik virtual machine executable) file, which is the executable program of the Android Dalvik virtual machine.
随着虚拟机技术的发展,越来越多不同类型的虚拟机被开发,不同版本的Android系统使用的虚拟机也随之发生了变化。不同的虚拟机所能解析的可执行程序的格式不尽相同,例如从Android 5.0开始,已经默认使用的是ART(Android runtime)虚拟机,但ART虚拟机只能解析Oat文件。Oat文件是一种Android私有的ELF文件格式,它不仅包含有从Dex文件翻译而来的本地机器指令,还包含有原来的Dex文件内容,这就使得无需重新编译原有的APK就可以让它正常地在ART里面运行,也就是不需要改变原来的APK编程接口。而Android5.0之前的版本使用的是Dalvik虚拟机,Dalvik虚拟机只能解析Dex文件。但是目前的大多数APK文件中封装的依然是Dex文件。因此,在高版本的Android系统环境下,在安装应用程序前需要对APK文件中的Dex文件进行格式转换。可以理解地,即便移动终端当前安装的虚拟机可以解析Dex文件,但由于提取Dex文件也需要一定的时间且提取出的Dex文件体积较大,因此为了在出厂后首次开机执行程序安装任务时节省提取文件的时间,减少空间占用,提高运行效率,也可提取Dex文件并进行优化。With the development of virtual machine technology, more and more different types of virtual machines are developed, and the virtual machines used by different versions of the Android system also change accordingly. Different virtual machines can parse executable programs in different formats. For example, since Android 5.0, the ART (Android runtime) virtual machine has been used by default, but the ART virtual machine can only parse Oat files. The Oat file is an Android proprietary ELF file format, which not only contains the local machine instructions translated from the Dex file, but also contains the original Dex file content, which makes it possible to make it without recompiling the original APK. It runs normally in ART, that is, there is no need to change the original APK programming interface. The versions before Android 5.0 use the Dalvik virtual machine, and the Dalvik virtual machine can only parse Dex files. However, most of the current APK files are still packaged in Dex files. Therefore, in a high-version Android system environment, it is necessary to perform format conversion on the Dex file in the APK file before installing the application program. Understandably, even if the virtual machine currently installed on the mobile terminal can parse the Dex file, it takes a certain amount of time to extract the Dex file and the extracted Dex file is relatively large in size, so in order to save time when the program installation task is executed for the first time after leaving the factory The time to extract files can reduce space occupation and improve operating efficiency. Dex files can also be extracted and optimized.
移动终端在刷机操作结束后重新启动,并在开机后自动触发程序安装任务,提取各应用程序的安装包中的虚拟机可执行程序文件,并根据预置的转换规则,将虚拟机可执行程序文件转换为指定的优化格式的目标程序文件,或者转换为移动终端当前使用的虚拟机可解析的对应格式的目标程序文件,然后通过虚拟机加载该目标程序文件并运行,以完成应用程序的安装。After the flashing operation, the mobile terminal restarts, and automatically triggers the program installation task after booting, extracts the executable program files of the virtual machine in the installation package of each application program, and converts the executable program files of the virtual machine according to the preset conversion rules. The file is converted into a target program file in the specified optimized format, or converted into a target program file in a corresponding format that can be parsed by the virtual machine currently used by the mobile terminal, and then the target program file is loaded and run through the virtual machine to complete the installation of the application .
S204、触发测试任务,按照指定的测试脚本进行系统测试;S204, triggering a test task, and performing a system test according to a specified test script;
接收计算机发送的测试指令,触发测试任务,或者在完成程序安装任务后自动触发测试任务,执行指定的测试脚本对系统进行测试。该测试脚本可以用于测试系统的兼容性或稳定性,例如安装并运行测试程序,获取运行数据以检测该测试程序是否可安装或正常运行在当前操作系统下。可以理解地,在测试过程中,根据测试需要,由于需要执行程序安装操作,在安装过程中,也会产生测试程序的Dex文件的转换文件。Receive the test instruction sent by the computer, trigger the test task, or automatically trigger the test task after completing the program installation task, and execute the specified test script to test the system. The test script can be used to test the compatibility or stability of the system, such as installing and running a test program, and obtaining running data to detect whether the test program can be installed or run normally under the current operating system. It can be understood that during the testing process, according to the testing requirements, due to the need to perform the program installation operation, a conversion file of the Dex file of the test program will also be generated during the installation process.
S205、当检测到测试结束时,清除缓存的所有数据文件中除目标程序文件之外的其他文件,使得移动终端在下一次开机时通过加载目标程序文件安装应用程序。S205. When it is detected that the test is over, clear all cached data files except the target program file, so that the mobile terminal installs the application program by loading the target program file when it is turned on next time.
当检测到测试结束时,清除缓存的除了步骤203中生成的目标程序文件之外的其他各种数据文件,如清除拍摄的图片、清除安装的非内置的应用程序、清除测试程序的Oat文件等等。When it is detected that the test ends, clear the other various data files of the cache except the target program file generated in step 203, such as clearing the picture taken, clearing the non-built-in application program installed, clearing the Oat file of the test program, etc. Wait.
本实施例提供的提高移动终端首次开机速度的方法,通过在出厂前的系统测试阶段将应用程序的安装包中的虚拟机可执行程序文件转换为指定格式的目标程序文件,并在完成测试后将该目标程序文件有针对性地予以保留,使得移动终端在用户购买后首次开机时,可通过直接加载目标程序文件安装各应用程序,从而省去了开机时提取Dex文件并转化为目标程序文件的过程,因此相较于现有技术,本发明可加快开机速度,提高开机效率。The method for improving the first power-on speed of the mobile terminal provided by this embodiment is to convert the executable program file of the virtual machine in the installation package of the application program into a target program file in a specified format during the system test phase before leaving the factory, and after completing the test The target program file is retained in a targeted manner, so that when the user starts the mobile terminal for the first time after purchase, each application can be installed by directly loading the target program file, thereby eliminating the need to extract the Dex file and convert it into the target program file when starting up Therefore, compared with the prior art, the present invention can speed up the start-up speed and improve the start-up efficiency.
请参阅图3,图3为本发明第二实施例提供的提高移动终端首次开机速度的方法的实现流程示意图。该方法可应用于图1所示的移动终端10中,主要包括以下步骤:Please refer to FIG. 3 . FIG. 3 is a schematic diagram of an implementation flow of a method for improving the first boot speed of a mobile terminal provided by the second embodiment of the present invention. This method can be applied in the mobile terminal 10 shown in Figure 1, mainly comprises the following steps:
S301、接收刷机指令,执行刷机操作;S301. Receive a flashing instruction, and perform a flashing operation;
接收用户触发的刷机指令或者接收计算机发送的刷机指令,对移动终端执行刷机操作。其中,刷机是指为移动终端重装操作系统。具体地,重装的操作系统可以但不限于各种版本的Android系统或类似操作系统。移动终端可进入刷机模式,如recovery模式或fastfoot模式,将刷机包中的操作系统文件以及待安装的各应用程序的安装文件写入移动终端。Receive the flashing instruction triggered by the user or receive the flashing instruction sent by the computer, and execute the flashing operation on the mobile terminal. Wherein, flashing refers to reinstalling the operating system for the mobile terminal. Specifically, the reinstalled operating system may be, but not limited to, various versions of the Android system or similar operating systems. The mobile terminal can enter a flashing mode, such as recovery mode or fastfoot mode, and write the operating system files in the flashing package and the installation files of each application program to be installed into the mobile terminal.
S302、当检测到刷机操作结束时,重启移动终端;S302. Restart the mobile terminal when it is detected that the flashing operation ends;
S303、开机后触发程序安装任务,提取内置的各应用程序的安装包中的虚拟机可执行程序文件;S303. Trigger the program installation task after starting up, and extract the executable program files of the virtual machine in the installation packages of the built-in applications;
内置的各应用程序的安装包,即,之前刷机时写入的各应用程序的安装包。不同类型的操作系统,对应的应用程序安装包的格式也不相同,以Android系统为例,Android系统的应用程序安装包的格式为APK格式,APK文件实际上是一个压缩的ZIP文件,是把AndroidSDK编译的工程打包后形成的一个安装程序文件,其中包括资源文件、程序全局配置文件以及Dex文件等等。Dex文件是Dalvik VM executes(Dalvik虚拟机可执行)文件的全称,即Android Dalvik虚拟机的可执行程序。The built-in installation packages of each application program, that is, the installation packages of each application program written during the previous flashing. Different types of operating systems have different formats of corresponding application installation packages. Taking the Android system as an example, the format of the application installation package of the Android system is APK format. The APK file is actually a compressed ZIP file, which is An installer file formed after the AndroidSDK compiled project is packaged, including resource files, program global configuration files, and Dex files, etc. The Dex file is the full name of the Dalvik VM executes (Dalvik virtual machine executable) file, which is the executable program of the Android Dalvik virtual machine.
S304、判断系统使用的虚拟机是否能够解析虚拟机可执行程序文件;S304. Determine whether the virtual machine used by the system can parse the executable program file of the virtual machine;
随着虚拟机技术的发展,越来越多类型的虚拟机被开发,不同版本的Android系统随之采用的虚拟机技术也发生了变化。不同的虚拟机所能解析的可执行程序的格式也不尽相同,例如从Android 5.0开始,已经默认使用的是ART(Android runtime)虚拟机,但ART虚拟机只能解析Oat文件,而Android 5.0之前的版本使用的是Dalvik虚拟机,Dalvik虚拟机只能解析Dex文件。根据提取出的虚拟机可执行程序文件的格式可判断系统使用的虚拟机是否支持解析该虚拟机可执行程序文件。With the development of virtual machine technology, more and more types of virtual machines have been developed, and the virtual machine technology adopted by different versions of Android systems has also changed. Different virtual machines can parse executable programs in different formats. For example, starting from Android 5.0, the ART (Android runtime) virtual machine has been used by default, but the ART virtual machine can only parse Oat files, while Android 5.0 The previous version used the Dalvik virtual machine, and the Dalvik virtual machine can only parse Dex files. According to the format of the extracted virtual machine executable program file, it can be judged whether the virtual machine used by the system supports parsing the virtual machine executable program file.
S305、若不能够解析,则将虚拟机可执行程序文件转换为虚拟机能够解析的对应格式的目标程序文件,加载目标程序文件;S305. If it cannot be parsed, convert the executable program file of the virtual machine into a target program file in a corresponding format that the virtual machine can parse, and load the target program file;
若系统使用的虚拟机不支持解析提取出的虚拟机可执行程序文件,则将该虚拟机可执行程序文件转换为虚拟机能够解析的格式的程序文件,如将Dex文件转换为Oat文件,并利用虚拟机加载该Oat文件并运行,以完成应用程序的安装;If the virtual machine used by the system does not support parsing the extracted virtual machine executable program file, then convert the virtual machine executable program file into a program file in a format that the virtual machine can parse, such as converting a Dex file into an Oat file, and Utilize the virtual machine to load the Oat file and run it to complete the installation of the application program;
S306、若能够解析,则将虚拟机可执行程序文件转换为优化格式的目标程序文件,加载目标程序文件;S306. If it can be parsed, convert the virtual machine executable program file into an optimized format target program file, and load the target program file;
若系统使用的虚拟机支持解析提取出的虚拟机可执行程序文件,则将该虚拟机可执行程序文件转换为优化格式的程序文件,如将Dex文件转换为ODex文件,并利用虚拟机加载该ODex文件,以完成应用程序的安装。ODex文件是APK中提取出来的可运行文件,即将APK中的classes.dex文件通过Dex优化过程将其优化生成一个.dex文件单独存放,原APK中的classes.dex文件仍然保留。If the virtual machine used by the system supports parsing the extracted virtual machine executable program file, convert the virtual machine executable program file into an optimized format program file, such as converting a Dex file into an ODex file, and use the virtual machine to load the ODex file to complete the installation of the application. The ODex file is an executable file extracted from the APK, that is, the classes.dex file in the APK is optimized through the Dex optimization process to generate a .dex file that is stored separately, and the classes.dex file in the original APK is still retained.
作为本发明一个实施例,也可不进行判断,直接提取内置的各应用程序的安装包中的Dex文件并转换为Oat文件。As an embodiment of the present invention, it is also possible to directly extract the Dex file in the installation package of each built-in application program and convert it into an Oat file without making a judgment.
S307、获取各应用程序的安装包的特征信息及各应用程序的安装包各自对应的目标程序文件的特征信息,根据特征信息,生成目标文件列表;S307. Obtain feature information of the installation packages of each application program and feature information of target program files corresponding to the installation packages of each application program, and generate a target file list according to the feature information;
具体地,特征信息可以包括名称和哈希值。获取各应用程序的安装包的名称及各应用程序的安装包各自对应的目标程序文件的名称;分别对各应用程序的安装包及各应用程序的安装包各自对应的目标程序文件进行哈希运算,得到各应用程序的安装包的哈希值及各应用程序的安装包各自对应的目标程序文件的哈希值。Specifically, feature information may include a name and a hash value. Obtain the name of the installation package of each application program and the name of the target program file corresponding to the installation package of each application program; respectively perform a hash operation on the installation package of each application program and the target program file corresponding to the installation package of each application program to obtain the hash value of the installation package of each application program and the hash value of the target program file corresponding to each installation package of each application program.
可以理解地,应用程序的安装包的名称和应用程序的安装包的哈希值之间具有一一对应的关系,应用程序的安装包对应的目标程序文件的名称和该目标程序文件的哈希值之间也具有一一对应的关系。Understandably, there is a one-to-one correspondence between the name of the application installation package and the hash value of the application installation package, and the name of the target program file corresponding to the application installation package and the hash value of the target program file There is also a one-to-one correspondence between the values.
根据获取的名称和哈希值生成目标文件列表,该目标文件列表中包含:各应用程序的安装包的名称及各应用程序的安装包的名称各自对应的哈希值、以及各应用程序的安装包各自对应的目标程序文件的名称及各目标程序文件的名称各自对应的哈希值。A target file list is generated according to the obtained name and hash value, and the target file list includes: the name of the installation package of each application, the hash value corresponding to the name of the installation package of each application, and the installation of each application The names of the target program files corresponding to the packages and the hash values corresponding to the names of the target program files.
S308、触发测试任务,按照指定的测试脚本进行系统测试;S308. Trigger a test task, and perform a system test according to a specified test script;
接收计算机发送的测试指令,触发测试任务,或者在完成程序安装任务后自动触发测试任务,执行指定的测试脚本对系统进行测试。该测试脚本可以用于测试系统的兼容性或稳定性,例如安装并运行测试程序,获取运行数据以检测该测试程序是否可安装或正常运行在当前操作系统下。可以理解地,在测试过程中,根据测试需要,由于需要执行程序安装操作,在安装过程中,也会产生测试程序的Dex文件的Oat文件或ODex文件。Receive the test instruction sent by the computer, trigger the test task, or automatically trigger the test task after completing the program installation task, and execute the specified test script to test the system. The test script can be used to test the compatibility or stability of the system, such as installing and running a test program, and obtaining running data to detect whether the test program can be installed or run normally under the current operating system. It can be understood that during the test process, according to the test requirements, due to the need to perform the program installation operation, the Oat file or the ODex file of the Dex file of the test program will also be generated during the installation process.
S309、当检测到测试结束时,获取缓存的所有数据文件的特征信息,逐一将各数据文件的特征信息与目标文件列表中的特征信息进行匹配;S309. When it is detected that the test is over, obtain the characteristic information of all cached data files, and match the characteristic information of each data file with the characteristic information in the target file list one by one;
S310、若数据文件的特征信息与目标文件列表中的特征信息相匹配,则保留数据文件;S310. If the feature information of the data file matches the feature information in the target file list, keep the data file;
S311、若数据文件的特征信息与目标文件列表中的特征信息不匹配,则清除数据文件。S311. If the characteristic information of the data file does not match the characteristic information in the target file list, clear the data file.
具体地,获取缓存的所有数据文件的名称,并对各数据文件进行哈希运算,得到各数据文件的哈希值,数据文件的名称与数据文件的哈希值之间具有一一对应的关系。逐一将各数据文件的名称及该名称对应的哈希值与目标文件列表中的名称及该名称对应的哈希值进行匹配,若某一数据文件的名称及其对应哈希值与目标文件列表中的某一组名称及该名称对应的哈希值均相同,则保留该数据文件,否则,清除该数据文件,从而使得内置应用程序的目标程序文件得以保留。Specifically, obtain the names of all cached data files, and perform hash operations on each data file to obtain the hash value of each data file, and there is a one-to-one correspondence between the name of the data file and the hash value of the data file . Match the name of each data file and the hash value corresponding to the name with the name in the target file list and the hash value corresponding to the name one by one. If the name of a data file and its corresponding hash value If a group of names and the hash value corresponding to the name are the same, the data file is kept; otherwise, the data file is cleared, so that the target program file of the built-in application can be kept.
为了更好地理解本实施例提供的提高移动终端首次开机速度的方法,在一具体应用场景中,首先在编译的时候记录/data/app(各应用程序的安装包的存储位置)文件夹下所有应用程序的安装包的名称,然后刷机开机,安装各应用程序,在安装的过程中记录转换得到的Oat文件的名称,根据记录的所有应用程序的安装包的名称以及Oat文件的名称,生成目标文件列表data_app.txt,接着产线进行一系列测试,当测试结束后,执行*#8778#进行总清除操作,进入recovery模式根据data_app.txt,清除/data/dalvik-cache/data@app@XXXXXX中缓存的除了data_app.txt中记录的相关文件以外的其他文件。于是,当用户购买了手机后,首次开机时,手机直接运行/data/dalvik-cache文件下Oat文件进行应用程序的安装操作,从而免去了再次进行从Dex文件到Oat文件的转化过程,减少了开机用时,提高了开机速度,进而可提高用户体验,增加产品粘性。In order to better understand the method for improving the first boot speed of the mobile terminal provided by this embodiment, in a specific application scenario, first record the /data/app (storage location of the installation package of each application program) folder when compiling. The name of the installation package of all applications, and then boot the machine, install each application, record the name of the converted Oat file during the installation process, and generate according to the recorded names of the installation package of all applications and the name of the Oat file The target file list is data_app.txt, and then the production line conducts a series of tests. When the test is over, execute *#8778# to perform a total clear operation and enter the recovery mode. According to data_app.txt, clear /data/dalvik-cache/data@app@ Other files cached in XXXXXX except the related files recorded in data_app.txt. Therefore, when the user purchases the mobile phone and turns it on for the first time, the mobile phone directly runs the Oat file under the /data/dalvik-cache file to install the application, thereby avoiding the conversion process from the Dex file to the Oat file again, reducing the The startup time is reduced, and the startup speed is improved, which in turn can improve user experience and increase product stickiness.
本发明实施例提供的提高移动终端首次开机速度的方法,通过在出厂前的系统测试阶段将应用程序的安装包中的虚拟机可执行程序文件转换为指定格式的目标程序文件,并在完成测试后将该目标程序文件有针对性地予以保留,使得移动终端在用户购买后首次开机时,可通过直接加载目标程序文件安装各应用程序,从而省去了开机时提取Dex文件并转化为目标程序文件的过程,因此相较于现有技术,本发明可加快开机速度,提高开机效率。The method for improving the first boot speed of the mobile terminal provided by the embodiment of the present invention is to convert the executable program file of the virtual machine in the installation package of the application program into the target program file of the specified format in the system test stage before leaving the factory, and complete the test Afterwards, the target program file is retained in a targeted manner, so that when the mobile terminal is turned on for the first time after purchase by the user, each application program can be installed by directly loading the target program file, thereby eliminating the need to extract the Dex file and convert it into the target program when starting up. Therefore, compared with the prior art, the present invention can speed up the booting speed and improve the booting efficiency.
请参阅图4,图4是本发明第三实施例提供的提高移动终端首次开机速度的装置的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分。图4示例的提高移动终端首次开机速度的装置可以是前述实施例提供的提高移动终端首次开机速度的方法的执行主体,其可以移动终端或者移动终端中的一个功能模块。图4示例的提高移动终端首次开机速度的装置,主要包括:刷机模块401、重启模块402、转换模块403、测试模块404以及清除模块405。各功能模块详细说明如下:Please refer to FIG. 4 . FIG. 4 is a schematic structural diagram of an apparatus for improving the first boot speed of a mobile terminal according to a third embodiment of the present invention. For convenience of description, only parts related to the embodiment of the present invention are shown. The apparatus for increasing the first boot speed of the mobile terminal illustrated in FIG. 4 may be the subject of execution of the method for increasing the first boot speed of the mobile terminal provided in the foregoing embodiments, which may be the mobile terminal or a functional module in the mobile terminal. The device for improving the first boot speed of the mobile terminal illustrated in FIG. 4 mainly includes: a flashing module 401 , a restarting module 402 , a converting module 403 , a testing module 404 and a clearing module 405 . The detailed description of each functional module is as follows:
刷机模块401,用于接收刷机指令,执行刷机操作;The flashing module 401 is used to receive the flashing instruction and execute the flashing operation;
重启模块402,用于当检测到刷机操作结束时,重启移动终端;A restart module 402, configured to restart the mobile terminal when it is detected that the brushing operation ends;
转换模块403,用于在开机后触发程序安装任务,提取内置的各应用程序的安装包中的虚拟机可执行程序文件并转换为指定格式的目标程序文件,加载该目标程序文件;The conversion module 403 is used to trigger the program installation task after booting, extract the virtual machine executable program file in the installation package of each built-in application program and convert it into a target program file in a specified format, and load the target program file;
测试模块404,用于触发测试任务,按照指定的测试脚本进行系统测试;A test module 404, configured to trigger a test task and perform a system test according to a specified test script;
清除模块405,用于当检测到测试结束时,清除缓存的所有数据文件中除该目标程序文件之外的其他文件,使得移动终端在下一次开机时通过加载目标程序文件安装应用程序。The clearing module 405 is configured to clear all cached data files except the target program file when the end of the test is detected, so that the mobile terminal installs the application program by loading the target program file when the mobile terminal is turned on next time.
具体地,首先,刷机模块401接收用户触发的刷机指令或者接收计算机发送的刷机指令,对移动终端执行刷机操作。其中,刷机是指为移动终端重装操作系统。具体地,重装的操作系统可以但不限于包括:各种版本的Android系统或类似操作系统。刷机模块401可使得移动终端进入刷机模式,如recovery模式或fastfoot模式,将刷机包中的操作系统文件以及待安装的各应用程序的安装文件写入移动终端。该应用程序可以包括系统应用程序和第三方应用程序。Specifically, first, the flashing module 401 receives a flashing instruction triggered by a user or a flashing instruction sent by a computer, and executes a flashing operation on the mobile terminal. Wherein, flashing refers to reinstalling the operating system for the mobile terminal. Specifically, the reinstalled operating system may include, but is not limited to: various versions of the Android system or similar operating systems. The flashing module 401 can make the mobile terminal enter a flashing mode, such as recovery mode or fastfoot mode, and write the operating system files in the flashing package and the installation files of each application program to be installed into the mobile terminal. The applications can include system applications and third-party applications.
其次,当检测到刷机操作结束时,重启模块402重启移动终端,当移动终端重新开机后,转换模块403自动触发程序安装任务,提取内置的各应用程序的安装包中的虚拟机可执行程序文件并转换为指定格式的目标程序文件,加载该目标程序文件并运行,以完成应用程序的安装。其中,内置的各应用程序的安装包,即,之前刷机时写入的各应用程序的安装文件。不同类型的操作系统,对应的应用程序的安装包的格式也不相同,以Android系统为例,Android系统的应用程序安装包的格式为APK(AndroidPackage,Android安装包)格式,APK文件实际上是一个压缩的ZIP文件,是把Android SDK编译的工程打包后形成的一个安装程序文件,其中包括资源文件、程序全局配置文件以及Dex文件等等。Dex文件是DalvikVM executes(Dalvik虚拟机可执行)文件的全称,即Android Dalvik虚拟机的可执行程序。随着虚拟机技术的发展,越来越多不同类型的虚拟机被开发,不同版本的Android系统使用的虚拟机也随之发生了变化,不同的虚拟机所能解析的可执行程序的格式不尽相同,例如从Android 5.0开始,已经默认使用的是ART(Android runtime)虚拟机,但ART虚拟机只能解析Oat文件。因此,在安装程序之前,转换模块403需要将Dex文件转换为Oat文件。可以理解地,即便移动终端当前安装的虚拟机可以解析Dex文件,但由于提取Dex文件也需要一定的时间且提取出的Dex文件体积较大,因此为了在出厂后首次开机执行程序安装任务时节省提取文件的时间,减少空间占用,提高运行效率,转换模块403也可提取Dex文件并进行优化。Secondly, when it is detected that the flashing operation ends, the restart module 402 restarts the mobile terminal, and when the mobile terminal is restarted, the conversion module 403 automatically triggers the program installation task to extract the virtual machine executable program files in the installation packages of the built-in applications And convert it into an object program file in a specified format, load the object program file and run it, so as to complete the installation of the application program. Wherein, the built-in installation package of each application program is the installation file of each application program written when flashing the machine before. Different types of operating systems have different formats of corresponding application installation packages. Taking the Android system as an example, the format of the application installation package of the Android system is the APK (Android Package, Android installation package) format, and the APK file is actually A compressed ZIP file is an installer file formed by packaging the project compiled by the Android SDK, including resource files, program global configuration files, and Dex files. The Dex file is the full name of the DalvikVM executes (Dalvik virtual machine executable) file, which is the executable program of the Android Dalvik virtual machine. With the development of virtual machine technology, more and more different types of virtual machines have been developed, and the virtual machines used by different versions of the Android system have also changed. The formats of executable programs that different virtual machines can parse are different. In the same way, for example, starting from Android 5.0, the ART (Android runtime) virtual machine has been used by default, but the ART virtual machine can only parse Oat files. Therefore, before installing the program, the conversion module 403 needs to convert the Dex file into an Oat file. Understandably, even if the virtual machine currently installed on the mobile terminal can parse the Dex file, it takes a certain amount of time to extract the Dex file and the extracted Dex file is relatively large in size, so in order to save time when the program installation task is executed for the first time after leaving the factory The time for extracting files is reduced, space occupation is reduced, and operating efficiency is improved. The conversion module 403 can also extract and optimize Dex files.
再次,测试模块404接收计算机发送的测试指令,触发测试任务,或者在完成程序安装任务后自动触发测试任务,执行指定的测试脚本对系统进行测试。该测试脚本可以用于测试系统的兼容性或稳定性,例如安装并运行测试程序,获取运行数据以检测该测试程序是否可安装或正常运行在当前操作系统下。可以理解地,在测试过程中,根据测试需要,由于需要执行程序安装操作,在安装过程中,也会产生测试程序的Dex文件的转换文件。Again, the test module 404 receives the test instruction sent by the computer, triggers the test task, or automatically triggers the test task after the program installation task is completed, and executes the specified test script to test the system. The test script can be used to test the compatibility or stability of the system, such as installing and running a test program, and obtaining running data to detect whether the test program can be installed or run normally under the current operating system. It can be understood that during the testing process, according to the testing requirements, due to the need to perform the program installation operation, a conversion file of the Dex file of the test program will also be generated during the installation process.
最后,清除模块405当检测到测试模块404完成测试任务时,清除缓存的除了步骤203中生成的目标程序文件之外的其他各种数据文件,如清除拍摄的图片、清除安装的非内置的应用程序等等。Finally, when the clearing module 405 detects that the testing module 404 has completed the test task, it clears the cached data files other than the target program files generated in step 203, such as clearing the captured pictures and clearing the installed non-built-in applications. program and so on.
需要说明的是,上述图4示例的提高移动终端首次开机速度的装置的实施方式中,各功能模块的划分仅是举例说明,实际应用中可以根据需要,例如相应硬件的配置要求或者软件的实现的便利考虑,而将上述功能分配由不同的功能模块完成,即将该下载装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。而且,实际应用中,本实施例中的相应的功能模块可以是由相应的硬件实现,也可以由相应的硬件执行相应的软件完成(本说明书提供的各个实施例都可应用上述描述原则,以下不再赘述)。It should be noted that, in the embodiment of the device for improving the first boot speed of the mobile terminal illustrated in FIG. 4 above, the division of each functional module is only an example, and in actual applications, it can be based on the needs, such as the configuration requirements of the corresponding hardware or the realization of the software. Considering the convenience, the above function allocation is completed by different functional modules, that is, the internal structure of the downloading device is divided into different functional modules, so as to complete all or part of the functions described above. Moreover, in practical applications, the corresponding functional modules in this embodiment can be implemented by corresponding hardware, or can be completed by corresponding hardware executing corresponding software (the above description principles can be applied to each embodiment provided in this specification, and the following No longer).
本发明实施例提供的提高移动终端首次开机速度的装置,通过在出厂前的系统测试阶段将应用程序的安装包中的虚拟机可执行程序文件转换为指定格式的目标程序文件,并在完成测试后将该目标程序文件有针对性地予以保留,使得移动终端在用户购买后首次开机时,可通过直接加载目标程序文件安装各应用程序,从而省去了开机时提取Dex文件并转化为目标程序文件的过程,因此相较于现有技术,本发明可加快开机速度,提高开机效率。The device for improving the first boot speed of the mobile terminal provided by the embodiment of the present invention converts the executable program file of the virtual machine in the installation package of the application program into the target program file of the specified format during the system test stage before leaving the factory, and completes the test Afterwards, the target program file is retained in a targeted manner, so that when the mobile terminal is turned on for the first time after purchase by the user, each application program can be installed by directly loading the target program file, thereby eliminating the need to extract the Dex file and convert it into the target program when starting up. Therefore, compared with the prior art, the present invention can speed up the booting speed and improve the booting efficiency.
请参阅图5,图5是本发明第四实施例提供的提高移动终端首次开机速度的装置的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分。图5示例的提高移动终端首次开机速度的装置可以是前述实施例提供的提高移动终端首次开机速度的方法的执行主体,其可以是移动终端或者移动终端中的一个功能模块。在图4所示本发明第三实施例提供的提高移动终端首次开机速度的装置的基础上,与第三实施例不同的是,在第四实施例中,如图5所示的装置,进一步包括:提取子模块4031、第一转换子模块4032、判断子模块4033、第二转换子模块4034、第三转换子模块4035、获取模块501、列表生成模块502、获取子模块4051、匹配子模块4052以及清除子模块4053。各功能模块详细说明如下:Please refer to FIG. 5 . FIG. 5 is a schematic structural diagram of an apparatus for increasing the first boot speed of a mobile terminal according to a fourth embodiment of the present invention. For ease of description, only parts related to the embodiment of the present invention are shown. The apparatus for increasing the first boot speed of a mobile terminal illustrated in FIG. 5 may be the subject of execution of the method for increasing the first boot speed of a mobile terminal provided in the foregoing embodiments, and it may be a mobile terminal or a functional module in the mobile terminal. On the basis of the device for improving the first boot speed of the mobile terminal provided by the third embodiment of the present invention shown in FIG. 4 , different from the third embodiment, in the fourth embodiment, the device shown in FIG. 5 is further Including: extraction sub-module 4031, first conversion sub-module 4032, judgment sub-module 4033, second conversion sub-module 4034, third conversion sub-module 4035, acquisition module 501, list generation module 502, acquisition sub-module 4051, matching sub-module 4052 and clear submodule 4053. The detailed description of each functional module is as follows:
进一步地,转换模块403包括:Further, the conversion module 403 includes:
提取子模块4031,用于提取内置的各该应用程序的安装包中的Dex文件;Extract submodule 4031, used to extract the built-in Dex file in the installation package of each application program;
第一转换子模块4032,用于将该Dex文件转换为Oat文件。The first conversion sub-module 4032 is used to convert the Dex file into an Oat file.
进一步地,转换模块403还包括:Further, the conversion module 403 also includes:
判断子模块4033,用于判断系统使用的虚拟机是否能够解析该虚拟机可执行程序文件;Judging sub-module 4033, used to judge whether the virtual machine used by the system can resolve the executable program file of the virtual machine;
第二转换子模块4034,用于若判断子模块4033判断该系统使用的虚拟机不能够解析该虚拟机可执行程序文件,则将该虚拟机可执行程序文件转换为该虚拟机能够解析的对应格式的目标程序文件;The second conversion submodule 4034 is used to convert the executable program file of the virtual machine into a corresponding executable program file that the virtual machine can parse if the judging submodule 4033 judges that the virtual machine used by the system cannot parse the executable program file of the virtual machine. The object program file in the format;
第三转换子模块4035,用于若判断子模块4033判断该系统使用的虚拟机能够解析该虚拟机可执行程序文件,则将该虚拟机可执行程序文件转换为优化格式的目标程序文件。The third converting sub-module 4035 is configured to convert the executable program file of the virtual machine into a target program file in an optimized format if the judging sub-module 4033 judges that the virtual machine used by the system can parse the executable program file of the virtual machine.
进一步地,该装置还包括:Further, the device also includes:
获取模块501,用于获取各该应用程序的安装包的特征信息及各该应用程序的安装包各自对应的目标程序文件的特征信息;An acquisition module 501, configured to acquire the characteristic information of each installation package of the application program and the characteristic information of the target program file corresponding to each installation package of the application program;
列表生成模块502,用于根据该特征信息,生成目标文件列表。The list generation module 502 is configured to generate a target file list according to the characteristic information.
进一步地,清除模块405包括:Further, the clearing module 405 includes:
获取子模块4051,用于获取缓存的所有数据文件的特征信息;Obtaining sub-module 4051, configured to obtain feature information of all cached data files;
匹配子模块4052,用于逐一将各该数据文件的特征信息与该目标文件列表中的特征信息进行匹配;The matching submodule 4052 is used to match the characteristic information of each data file with the characteristic information in the target file list one by one;
清除子模块4053,用于若该数据文件的特征信息与该目标文件列表中的特征信息相匹配,则保留该数据文件,以及若该数据文件的特征信息与该目标文件列表中的特征信息不匹配,则清除该数据文件。Clear submodule 4053, for if the feature information of the data file matches the feature information in the target file list, then keep the data file, and if the feature information of the data file is different from the feature information in the target file list match, the data file is cleared.
进一步地,该特征信息包括:名称和哈希值;Further, the feature information includes: name and hash value;
则获取模块501,还用于获取各该应用程序的安装包的名称及各该应用程序的安装包各自对应的目标程序文件的名称,以及分别对各该应用程序的安装包及各该应用程序的安装包各自对应的目标程序文件进行哈希运算,得到各该应用程序的安装包的哈希值及各该应用程序的安装包各自对应的目标程序文件的哈希值;The obtaining module 501 is also used to obtain the name of each installation package of the application program and the name of the target program file corresponding to each installation package of the application program, and the The target program files corresponding to the respective installation packages of the respective application programs are hashed to obtain the hash values of the respective installation packages of the application programs and the hash values of the respective target program files corresponding to the respective installation packages of the application programs;
获取子模块4051,还用于获取缓存的所有数据文件的名称,以及对各该数据文件进行哈希运算,得到各该数据文件的哈希值。The obtaining sub-module 4051 is also used to obtain the names of all cached data files, and perform a hash operation on each data file to obtain a hash value of each data file.
具体地,刷机模块401接收用户触发的刷机指令或者接收计算机发送的刷机指令,对移动终端执行刷机操作。当检测到刷机模块401执行完毕刷机操作时,重启模块402重启移动终端,当移动终端重新开机后,转换模块403自动触发程序安装任务,提取内置的各应用程序的安装包中的虚拟机可执行程序文件,判断子模块4033判断系统使用的虚拟机是否能够解析该虚拟机可执行程序文件,若系统使用的虚拟机不能够解析该虚拟机可执行程序文件,则第二转换子模块4034将该虚拟机可执行程序文件转换为该虚拟机能够解析的对应格式的目标程序文件,如将Dex文件转换为Oat文件,若该判断子模块判断该系统使用的虚拟机能够解析该虚拟机可执行程序文件,则第三转换子模块4035将该虚拟机可执行程序文件转换为优化格式的目标程序文件,如将Dex文件转换为ODex文件。然后,转换模块403利用虚拟机加载转换后的Oat文件或ODex文件并运行,以安装各应用程序。接着,获取模块501获取各该应用程序的安装包的特征信息及各该应用程序的安装包各自对应的目标程序文件的特征信息,列表生成模块502根据该特征信息生成目标文件列表。随后,测试模块404接收计算机发送的测试指令,触发测试任务,或者在完成程序安装任务后自动触发测试任务,执行指定的测试脚本对系统进行测试。当检测到测试模块404结束测试任务时,获取子模块4051获取缓存的所有数据文件的特征信息,匹配子模块4052逐一将各该数据文件的特征信息与该目标文件列表中的特征信息进行匹配,若该数据文件的特征信息与该目标文件列表中的特征信息相匹配,则清除子模块4053保留该数据文件,若该数据文件的特征信息与该目标文件列表中的特征信息不匹配,则清除子模块4053清除该数据文件。Specifically, the flashing module 401 receives a flashing instruction triggered by a user or a flashing instruction sent by a computer, and executes a flashing operation on the mobile terminal. When it is detected that the flashing module 401 has completed the flashing operation, the restart module 402 restarts the mobile terminal. When the mobile terminal is restarted, the conversion module 403 automatically triggers the program installation task, and extracts the executable virtual machine in the installation package of each built-in application program. program file, the judging submodule 4033 judges whether the virtual machine used by the system can resolve the executable program file of the virtual machine, if the virtual machine used by the system cannot resolve the executable program file of the virtual machine, the second conversion submodule 4034 will The executable program file of the virtual machine is converted into the target program file of the corresponding format that the virtual machine can parse, such as converting a Dex file into an Oat file, if the judging sub-module judges that the virtual machine used by the system can parse the executable program of the virtual machine file, the third conversion submodule 4035 converts the virtual machine executable program file into an optimized format target program file, such as converting a Dex file into an ODex file. Then, the conversion module 403 uses a virtual machine to load and run the converted Oat file or ODex file, so as to install various application programs. Next, the obtaining module 501 obtains the characteristic information of each installation package of the application program and the characteristic information of the target program file corresponding to each installation package of the application program, and the list generating module 502 generates a target file list according to the characteristic information. Subsequently, the test module 404 receives a test instruction sent by the computer, triggers a test task, or automatically triggers a test task after completing the program installation task, and executes a specified test script to test the system. When detecting that the test module 404 ends the test task, the acquisition submodule 4051 obtains the feature information of all data files in the cache, and the matching submodule 4052 matches the feature information of each data file with the feature information in the target file list one by one, If the feature information of the data file matches the feature information in the target file list, the clear submodule 4053 retains the data file, if the feature information of the data file does not match the feature information in the target file list, then clear Submodule 4053 clears the data file.
其中特征信息可包括名称和哈希值。在获取特征信息的过程中,具体地,获取模块501获取各该应用程序的安装包的名称及各该应用程序的安装包各自对应的目标程序文件的名称,以及分别对各该应用程序的安装包及各该应用程序的安装包各自对应的目标程序文件进行哈希运算,得到各该应用程序的安装包的哈希值及各该应用程序的安装包各自对应的目标程序文件的哈希值,列表生成模块502,根据上述名称及哈希值,生成目标文件列表。获取子模块4051获取缓存的所有数据文件的名称,以及对各该数据文件进行哈希运算,得到各该数据文件的哈希值。匹配子模块4052逐一将各该数据文件的名称和哈希值与该目标文件列表中的名称和哈希值进行匹配,并在名称和哈希值均匹配的情况下,清除子模块4053清除该名称和哈希值对应的数据文件。The feature information may include name and hash value. In the process of obtaining feature information, specifically, the obtaining module 501 obtains the name of each installation package of the application program and the name of the target program file corresponding to each installation package of the application program, as well as the installation of each application program. package and each corresponding target program file of each installation package of the application program, and obtain the hash value of each installation package of the application program and the hash value of the target program file corresponding to each installation package of the application program , the list generation module 502 generates a target file list according to the above-mentioned name and hash value. The obtaining sub-module 4051 obtains the names of all cached data files, and performs hash operation on each data file to obtain the hash value of each data file. The matching submodule 4052 matches the name and hash value of each data file with the name and hash value in the target file list one by one, and when the name and hash value all match, the clearing submodule 4053 clears the file. The data file corresponding to the name and hash value.
本发明实施例提供的提高移动终端首次开机速度的装置,通过在出厂前的系统测试阶段将应用程序的安装包中的虚拟机可执行程序文件转换为指定格式的目标程序文件,并在完成测试后将该目标程序文件有针对性地予以保留,使得移动终端在用户购买后首次开机时,可通过直接加载目标程序文件安装各应用程序,从而省去了开机时提取Dex文件并转化为目标程序文件的过程,因此相较于现有技术,本发明可加快开机速度,提高开机效率。The device for improving the first boot speed of the mobile terminal provided by the embodiment of the present invention converts the executable program file of the virtual machine in the installation package of the application program into the target program file of the specified format during the system test stage before leaving the factory, and completes the test Afterwards, the target program file is retained in a targeted manner, so that when the mobile terminal is turned on for the first time after purchase by the user, each application program can be installed by directly loading the target program file, thereby eliminating the need to extract the Dex file and convert it into the target program when starting up. Therefore, compared with the prior art, the present invention can speed up the booting speed and improve the booting efficiency.
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided in this application, it should be understood that the disclosed devices and methods may be implemented in other ways. For example, the device embodiments described above are only illustrative. For example, the division of the modules is only a logical function division. In actual implementation, there may be other division methods. For example, multiple modules or components can be combined or May be integrated into another system, or some features may be ignored, or not implemented. In another point, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or modules may be in electrical, mechanical or other forms.
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。The modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical modules, that is, they may be located in one place, or may be distributed to multiple network modules. Part or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。In addition, each functional module in each embodiment of the present invention may be integrated into one processing module, each module may exist separately physically, or two or more modules may be integrated into one module. The above-mentioned integrated modules can be implemented in the form of hardware or in the form of software function modules.
所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。If the integrated modules are realized in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the essence of the technical solution of the present invention or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium , including several instructions to make a computer device (which may be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disk or optical disk, and other media that can store program codes.
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本发明所必须的。It should be noted that, for the sake of simplicity of description, the aforementioned method embodiments are expressed as a series of action combinations, but those skilled in the art should know that the present invention is not limited by the described action sequence. Because of the present invention, certain steps may be performed in other orders or simultaneously. Secondly, those skilled in the art should also know that the embodiments described in the specification belong to preferred embodiments, and the actions and modules involved are not necessarily required by the present invention.
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。In the foregoing embodiments, the descriptions of each embodiment have their own emphases, and for parts not described in detail in a certain embodiment, reference may be made to relevant descriptions of other embodiments.
以上为对本发明所提供的一种提高移动终端首次开机速度的方法及装置的描述,对于本领域的技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。The above is a description of a method and device for improving the first boot speed of a mobile terminal provided by the present invention. For those skilled in the art, according to the idea of the embodiment of the present invention, there will be changes in the specific implementation and application scope. In summary, the contents of this specification should not be construed as limiting the present invention.
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201510943122.9ACN105528229B (en) | 2015-12-16 | 2015-12-16 | Improve the method and device that mobile terminal first powers on speed |
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201510943122.9ACN105528229B (en) | 2015-12-16 | 2015-12-16 | Improve the method and device that mobile terminal first powers on speed |
| Publication Number | Publication Date |
|---|---|
| CN105528229A CN105528229A (en) | 2016-04-27 |
| CN105528229Btrue CN105528229B (en) | 2018-09-07 |
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201510943122.9AExpired - Fee RelatedCN105528229B (en) | 2015-12-16 | 2015-12-16 | Improve the method and device that mobile terminal first powers on speed |
| Country | Link |
|---|---|
| CN (1) | CN105528229B (en) |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106997294A (en)* | 2016-01-26 | 2017-08-01 | 中兴通讯股份有限公司 | Odex document generating methods and device |
| CN105975037A (en)* | 2016-05-16 | 2016-09-28 | 青岛海信电器股份有限公司 | Method for restoring factory settings based on Android system and intelligent equipment |
| CN105897923B (en)* | 2016-05-31 | 2019-04-30 | 中国科学院信息工程研究所 | A method for identifying network traffic of APP installation package |
| CN107450937B (en)* | 2016-05-31 | 2021-02-19 | 中兴通讯股份有限公司 | Application program running method and running device |
| CN106250180B (en)* | 2016-07-27 | 2019-10-11 | 宇龙计算机通信科技(深圳)有限公司 | A kind of ODEX optimization control method and mobile terminal |
| CN106407826A (en)* | 2016-11-07 | 2017-02-15 | 珠海市魅族科技有限公司 | Data preserving method and device |
| CN106775644B (en)* | 2016-11-23 | 2020-03-17 | 北京小米移动软件有限公司 | File operation method and equipment |
| WO2018209843A1 (en)* | 2017-05-17 | 2018-11-22 | 华为技术有限公司 | Method, device and terminal for executing hotpatch |
| CN107168742B (en)* | 2017-05-19 | 2018-01-19 | 中南大学 | Quick deployment method is applied based on customization Android platform |
| CN109151809B (en)* | 2018-07-12 | 2021-12-03 | 维沃移动通信有限公司 | Mobile terminal detection method and mobile terminal |
| CN110908960B (en)* | 2018-08-28 | 2022-10-18 | Oppo(重庆)智能科技有限公司 | Electronic equipment and content detection and removal method thereof |
| CN109165048A (en)* | 2018-10-11 | 2019-01-08 | 四川长虹电器股份有限公司 | Quick start method after upgrading based on Android system |
| CN112445487B (en)* | 2019-09-02 | 2024-11-22 | 深圳Tcl新技术有限公司 | A dex optimization method, system, intelligent terminal and storage medium |
| CN111241560B (en)* | 2020-01-10 | 2023-01-31 | Oppo(重庆)智能科技有限公司 | Device detection control method and system, computer device, and computer storage medium |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103019775A (en)* | 2012-11-28 | 2013-04-03 | 北京小米科技有限责任公司 | Method, device and equipment for flashing for terminal equipment |
| CN104536891A (en)* | 2014-12-26 | 2015-04-22 | 小米科技有限责任公司 | Method and device for testing system |
| CN104965723A (en)* | 2014-10-09 | 2015-10-07 | 腾讯科技(深圳)有限公司 | Application program operation method and apparatus |
| CN105138382A (en)* | 2015-09-24 | 2015-12-09 | 广东欧珀移动通信有限公司 | Method and terminal for upgrading Android system |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7974744B2 (en)* | 2008-04-30 | 2011-07-05 | The United States Of America As Represented By The Secretary Of The Navy | Multiple telemetry stream parsing and reconstruction system |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103019775A (en)* | 2012-11-28 | 2013-04-03 | 北京小米科技有限责任公司 | Method, device and equipment for flashing for terminal equipment |
| CN104965723A (en)* | 2014-10-09 | 2015-10-07 | 腾讯科技(深圳)有限公司 | Application program operation method and apparatus |
| CN104536891A (en)* | 2014-12-26 | 2015-04-22 | 小米科技有限责任公司 | Method and device for testing system |
| CN105138382A (en)* | 2015-09-24 | 2015-12-09 | 广东欧珀移动通信有限公司 | Method and terminal for upgrading Android system |
| Publication number | Publication date |
|---|---|
| CN105528229A (en) | 2016-04-27 |
| Publication | Publication Date | Title |
|---|---|---|
| CN105528229B (en) | Improve the method and device that mobile terminal first powers on speed | |
| CN105677335A (en) | Method and device for increasing first starting speed of mobile terminal | |
| CN106406940B (en) | System upgrading method, device and terminal | |
| CN109982423A (en) | Antenna power method of adjustment, device, storage medium and intelligent terminal | |
| US10628271B2 (en) | Method for information processing and related device | |
| CN106126377B (en) | System startup method and device | |
| CN106951521B (en) | Method, device and system for reading and writing log files | |
| CN107871015B (en) | Log data processing method and device, terminal and readable storage medium | |
| WO2020168567A1 (en) | Data processing method and device, and mobile terminal | |
| US10269347B2 (en) | Method for detecting voice and electronic device using the same | |
| CN108647032A (en) | Using loading method and device, computer installation and computer readable storage medium | |
| CN106445609A (en) | Automatic updating method of application program and mobile terminal | |
| CN105446739A (en) | UI interface setting method and apparatus | |
| CN112394906B (en) | Method and equipment for switching application operation | |
| CN106406947B (en) | Method and device for preventing system service process from restarting, and mobile terminal | |
| CN104699515A (en) | Android operating system based upgrading method and intelligent terminal | |
| CN117971635A (en) | Code debugging method, electronic device and computer readable storage medium | |
| CN107484201B (en) | Traffic statistics method and device, terminal, and computer-readable storage medium | |
| US12222994B2 (en) | Quick application startup method and related apparatus | |
| CN106788561A (en) | Radio frequency circuit control method, device and terminal equipment | |
| WO2023051178A1 (en) | Task scheduling method, electronic device, chip system, and storage medium | |
| CN108415856A (en) | Device compatibility method and related device | |
| CN106657703A (en) | NV parameter import method, modem and mobile terminal | |
| CN105550006A (en) | Application program language setting method and mobile terminal | |
| CN104182331A (en) | Browser performance test method, browser performance test system and terminal |
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant | ||
| CP01 | Change in the name or title of a patent holder | Address after:Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18 Patentee after:GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd. Address before:Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18 Patentee before:GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd. | |
| CP01 | Change in the name or title of a patent holder | ||
| CF01 | Termination of patent right due to non-payment of annual fee | Granted publication date:20180907 | |
| CF01 | Termination of patent right due to non-payment of annual fee |