CN107329788A - 应用程序加载方法、装置及用户终端 - Google Patents

应用程序加载方法、装置及用户终端 Download PDF

Info

Publication number
CN107329788A
CN107329788A CN201710515088.4A CN201710515088A CN107329788A CN 107329788 A CN107329788 A CN 107329788A CN 201710515088 A CN201710515088 A CN 201710515088A CN 107329788 A CN107329788 A CN 107329788A
Authority
CN
China
Prior art keywords
application program
standalone feature
executable file
component
feature component
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.)
Pending
Application number
CN201710515088.4A
Other languages
English (en)
Inventor
黄银锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba China Co Ltd
Original Assignee
Guangzhou Youshi Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Youshi Network Technology Co Ltd filed Critical Guangzhou Youshi Network Technology Co Ltd
Priority to CN201710515088.4A priority Critical patent/CN107329788A/zh
Publication of CN107329788A publication Critical patent/CN107329788A/zh
Priority to RU2018108631A priority patent/RU2018108631A/ru
Priority to US15/919,708 priority patent/US10860337B2/en
Priority to US16/023,768 priority patent/US20190004828A1/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44568Immediately runnable code
    • G06F9/44573Execute-in-place [XIP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44568Immediately runnable code
    • G06F9/44578Preparing or optimising for loading

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种应用程序加载方法、装置及用户终端,涉及互联网技术领域。应用程序加载方法,应用于用户终端,所述方法包括:响应功能启用指令,匹配对应的应用程序的独立功能组件,其中所述应用程序被预先按照所实现功能的不同而打包成包括多个功能组件,所述功能组件包括独立功能组件;获得所述独立功能组件对应的可执行文件;加载所述独立功能组件对应的可执行文件。根据用户的使用需求加载对应可执行文件,使应用程序加载更加灵活,快速。减少应用程序对存储空间的长时间占用。进而提高应用程序的运行效率,提高用户的体验。

Description

应用程序加载方法、装置及用户终端
技术领域
本发明涉及互联网技术领域,具体而言,涉及一种互应用程序加载方法、装置及用户终端。
背景技术
应用程序是为了满足使用者应用目的而编撰的软体。作为互联网中为用户提供服务的主体,应用程序的运行好坏将直接影响用户使用互联网服务的体验。随着应用程序能实现的功能越来越多样,提供的服务越来越智能,应用程序对应的代码也越来越庞杂,进而导致应用程序加载过程慢,容易出错且对存储空间占用量大、占用时间长。
发明内容
本发明的目的在于提供一种应用程序加载方法,以改善上述问题。
本发明的另一个目的在于提供一种应用程序加载装置,以改善上述问题。
本发明的另一个目的在于提供一种用户终端。
为了实现上述目的,本发明实施例采用的技术方案如下:
本发明实施例提供一种应用程序加载方法,应用于用户终端,所述方法包括:响应功能启用指令,匹配对应的应用程序的独立功能组件,其中所述应用程序被预先按照所实现功能的不同而打包成包括多个功能组件,所述功能组件包括独立功能组件;获得所述独立功能组件对应的可执行文件;加载所述独立功能组件对应的可执行文件。
本发明实施例还提供一种应用程序加载装置,应用于用户终端,所述装置包括:匹配模块,用于响应功能启用指令,匹配对应的应用程序的独立功能组件,其中所述应用程序被预先按照所实现功能的不同而打包成包括多个功能组件,所述功能组件包括独立功能组件;获得模块,用于获得所述独立功能组件对应的可执行文件;第一加载模块,用于加载所述独立功能组件对应的可执行文件。
本发明实施例还提供一种用户终端,所述用户终端包括:存储器;处理器;以及应用程序加载装置,所述应用程序加载装置安装于所述存储器中并包括一个或多个由所述处理器执行的软件功能模组,所述应用程序加载装置包括:匹配模块,用于响应功能启用指令,匹配对应的应用程序的独立功能组件,其中所述应用程序被预先按照所实现功能的不同而打包成包括多个功能组件,所述功能组件包括独立功能组件;获得模块,用于获得所述独立功能组件对应的可执行文件;第一加载模块,用于加载所述独立功能组件对应的可执行文件。
与现有技术相比,本发明提供的一种应用程序加载方法、装置及用户终端。其中,应用程序加载方法,应用于用户终端,所述方法包括:响应功能启用指令,匹配对应的应用程序的独立功能组件,其中所述应用程序被预先按照所实现功能的不同而打包成包括多个功能组件,所述功能组件包括独立功能组件;获得所述独立功能组件对应的可执行文件;加载所述独立功能组件对应的可执行文件。根据启用的功能加载对应可执行文件,使应用程序加载更加灵活,快速。且避免了应用程序一启动就占用大量存储空间。进而提高使用者的体验。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明较佳实施例提供的用户终端的方框示意图。
图2示出了本发明实施例提供的应用程序加载方法流程图。
图3为本实施例中步骤S103的子步骤流程图。
图4为其他实施例中步骤S103的子步骤流程图。
图5示出了本发明实施例提供的应用程序加载装置的功能模块示意图。
图6为本实施例中匹配模块的功能子模块示意图。
图7为其他实施例中匹配模块的功能子模块示意图。
图标:100-用户终端;111-存储器;112-存储控制器;113-处理器;114-外设接口;115-显示单元;116-输入输出单元;200-应用程序加载装置;201-获得模块;202-匹配模块;2021-查询子模块;2022-获取子模块;2023-判断子模块;203-第一加载模块;204-获取模块;205-第二加载模块。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
图1示出本发明较佳实施例提供的用户终端100的方框示意图。用户终端100可以是,但不限于是移动终端设备、电脑,例如可以包括智能手机、平板电脑、膝上型便携计算机、车载电脑、个人数字助理(personal digital assistant,PDA)、台式电脑等等。所述用户终端100包括应用程序加载装置200、存储器111、存储控制器112、处理器113、外设接口114、显示单元115及输入输出单元116。
所述存储器111、存储控制器112、处理器113、外设接口114、输入、显示单元115及输入输出单元116各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述应用程序加载装置200包括至少一个可以软件或固件(firmware)的形式存储于所述存储器111中或固化在所述用户终端100的操作系统(operating system,OS)中的软件功能模块。所述处理器113用于执行所述存储器111中存储的可执行模块,例如所述应用程序加载装置200所包括的软件功能模块及计算机程序等。
其中,所述存储器111可以是,但不限于,随机存取存储器(Random AccessMemory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(ProgrammableRead-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-OnlyMemory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-OnlyMemory,EEPROM)等。其中,存储器111用于存储程序(包括操作系统程序),处理器113在接收到执行指令后,执行所述程序。所述处理器113以及其他可能的组件对存储器111的访问可在所述存储控制器112的控制下进行。
所述处理器113可能是一种集成电路芯片,具有对信号的处理能力。上述的处理器113可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器113也可以是任何常规的处理器等。
所述外设接口114将各种输入/输出装置(例如显示单元115、输入输出单元116)耦合至所述处理器113以及所述存储器111。在一些实施例中,外设接口114,处理器113以及存储控制器112可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。
所述显示单元115在所述用户终端100与用户之间提供一个交互界面(例如用户操作界面)或用于显示图像数据。在本实施例中,所述显示单元115可以是液晶显示器或触控显示器。若为触控显示器,其可为支持单点和多点触控操作的电容式触控屏或电阻式触控屏等。支持单点和多点触控操作是指触控显示器能感应到来自该触控显示器上一个或多个位置处产生的触控操作,并将该感应到的触控操作交由处理器113进行计算和处理。
所述输入输出单元116用于提供给用户输入数据实现用户与所述用户终端100的交互。所述输入输出单元116可以是,但不限于,虚拟键盘、语音输入电路等。
第一实施例
图2为本发明较佳实施例提供的一种应用程序加载方法的流程图。请参考图2,所述应用程序加载方法应用于用户终端100,所述方法包括以下步骤:
步骤S101,侦测到所述应用程序启动时,获取所述基础功能组件对应的可执行文件。
在本实施例中,应用程序被预先按照所实现功能的不同而打包成多个功能组件,并存放于用户终端100的存储器111中,可选地,可以是存放在asset目录下。其中,功能组件包括基础功能组件。需要说明的是,基础功能组件为实现应用程序基础功能的功能组件,即应用程序启动后必须加载执行的功能组件。例如,用于显示初始界面的功能组件。可执行文件为可由操作系统进行加载执行的文件。例如,安卓操作系统对应的可执行文件为DEX格式的文件。基础功能组件对应的可执行文件可以通过解压应用程序中的功能组件以获得。可选地,应用程序的基础功能组件被用户终端100解压之后将存储于用户终端100,以便下次运行应用程序时直接获取,而无需再度解压基础功能组件。例如,将asset目录下基础工作组件解压到应用程序目录下,在下次需要获取基础文件对应的可执行文件时,则直接从应用程序目录中已解压的基础功能组件中直接获取。
步骤S102,将所述基础功能组件对应的可执行文件加载入所述用户终端100的存储器111内。
在本实施例中,将获得的基础功能组件对应的可执行文件加载入存储器111中的临时存储器中。并将基础功能组件对应的组件内容加载入临时存储器中,执行基础功能组件对应的基础功能。以实现应用程序的运行。
步骤S103,响应功能启用指令,匹配对应的应用程序的独立功能组件。
在本实施例中,所述应用程序被预先按照所实现功能的不同而打包成包括多个功能组件,功能组件还包括多个独立功能组件。应用程序在运行后,可以通过加载执行独立功能组件以实现所述独立功能组件对应的功能。独立功能组件在其对应的功能启用指令被触发时才进行加载执行。以减少不必要的存储空间占用。以淘宝客户端为例,淘宝客户端包括搜索商品功能、与卖家沟通功能、支付功能等功能。淘宝客户端需要实现上述任何一项功能时,均需要加载执行与该功能对应的独立功能组件,例如,要实现搜索商品功能则需通过加载执行搜索功能组件、要实现与卖家沟通功能则需通过加载执行聊天功能组件、要实现支付功能则需通过加载执行支付功能组件。使用任何一个独立功能组件需要先匹配到该独立功能组件。而匹配独立功能组件需与其对应的功能启动指令被触发,可选地,用户可以根据使用需要通过输入输出单元116触发启动功能指令。例如,当用户的使用需求为实现搜索商品功能时,通过输入输出单元116点击搜索框则搜索启动指令触发,用户终端100根据获得的搜索启动指令触发,匹配出搜索功能组件;当用户需与卖家沟通时,可以通过输入输出单元116接收到用户选择卖家的操作触沟通启动指令,用户终端100根据沟通启动指令匹配出聊天功能组件;当用户需支付时,可以通过输入输出单元116获取到指纹或密码等以触发支付启动指令,用户终端100根据获得的支付启动指令匹配出支付功能组件。用户终端100在获得功能启用指令后,根据获得的功能启动指令对应需要实现的第一功能,匹配对应的独立功能组件。请参考图3,步骤S103包括以下子步骤:
子步骤S10311,查询已解压的所述独立功能组件是否存在与第一功能相对应的可执行文件。
在本实施例中,独立功能组件包括对应的可执行文件。通过解压独立功能组件以获得其对应的可执行文件。加载执行独立功能组件包括加载执行对应的可执行文件。当应用程序中一个独立功能组件初次使用时,需从应用程序中获取对应的独立功能组件,并将其解压以获得对应的可执行文件并存储。因此,当用户终端100获得与第一功能对应的功能启用指令时,先在已解压的所述独立功能组件中查询否存在与第一功能相对应的可执行文件。以减少重复工作,占用多余的存储空间。当若不存在与所述第一功能相对应的可执行文件流程进入子步骤S10312;若存在与所述第一功能相对应的可执行文件,则流程进入子步骤S10313。
子步骤S10312,获取所述应用程序中与第一功能相对应的未解压的所述独立功能组件。
在本实施例中,根据存储应用程序的目录途径从存储器111中访问所述应用程序的程序文件。程序文件包括所有的独立功能组件及基础功能组件,且均未解压。从未解压的独立功能组件中获取对应执行第一功能的独立功能组件。
子步骤S10313,获取所述已解压的所述独立功能组件。
在其他实施例中,如图4所示,步骤S103还可以是包括以下子步骤:
子步骤S10321,查询已解压的所述独立功能组件是否存在与第一功能相对应的可执行文件。当存在与第一功能相对应的可执行文件则流程进入子步骤S10322;当不存在与第一功能相对应的可执行文件时,流程进入子步骤S10324。
子步骤S10322,判断与所述第一功能相对应的可执行文件是否有效。可选地,利用信息摘要算法计算与第一功能相对应的可执行文件的第一MD5码,并将第一MD5码与解压第一功能对应的独立功能组件时计算并存储的可执行文件的第二MD5码进行比对,以检验已解压的独立功能组件是否在存储期间遭到了篡改。以避免运行被篡改的程序降低用户的体验。当与所述第一功能相对应的可执行文件有效则流程进入子步骤S10323;当与所述第一功能相对应的可执行文件无效则流程进入子步骤S10324。
子步骤S10323,获取所述已解压的所述独立功能组件。
子步骤S10324,获取所述应用程序中与第一功能相对应的未解压的所述独立功能组件。
步骤S104,获得所述独立功能组件对应的可执行文件。
在本实施例中,从在步骤S103获得的独立功能组件中获取可执行文件。用户终端100不能直接从未解压的独立功能组件中获取对应的可执行文件,但可以从已解压的独立功能组件中获得。可选地,当步骤S103获得的独立功能组件为未解压时,解压与第一功能相对应的未解压的所述独立功能组件以获得所述可执行文件;当骤S103获得的独立功能组件为已解压时,从所述已解压的所述独立功能组件中获得与第一功能相对应的可执行文件。需要说明的是,可执行文件为可由操作系统进行加载执行的文件。例如,安卓操作系统对应的可执行文件为DEX格式的文件。
步骤S105,加载所述独立功能组件对应的可执行文件。
在本实施例中,用户终端100只有通过加载可执行文件后才能执行独立功能组件对应的第一功能。可选地,可以将可执行文件加载入临时存储器中,以便立即执行。具体地,将所述独立功能组件对应的执行文件并入所述基础功能组件对应的可执行文件。基础功能组件对应的可执行文件在应用程序启动时已加载入临时存储器中执行,因此将独立功能组件对应的执行文件并入基础功能组件对应的可执行文件中,即可实现加载。
步骤S106,获取所述独立功能组件对应的组件内容。
在本实施例中,独立功能组件解压后可获得对应的可执行文件及组件内容。独立功能组件每解压一次就会将获得的可执行文件及组件内容替换上次解压获得的可执行文件及组件内容。在可执行文件被加载后,直接从对应的已解压的独立功能组件中获取对应的组件内容。组件内容为可执行文件执行第一功能时所需的素材数据。例如,淘宝客户端中可执行文件执行与商家对话的功能时,组件内容可以是。但不限于是对话框的图像素材、界面显示的素材等。
步骤S107,加载所述组件内容。
在本实施例中,将所述组件内容加载入临时存储器中,以方便执行可执行文件时,对组件内容进行调用。以通过显示单元115向用户展示功能实现界面。
第二实施例
请参照图5,图5为本发明实施例提供的应用程序加载装置200的功能模块示意图。所述应用程序加载装置200包括获得模块201、匹配模块202、第一加载模块203、获取模块204及第二加载模块205。
获得模块201,用于在侦测到所述应用程序启动时,获取所述基础功能组件对应的可执行文件。
在本实施例中,步骤S101可由获得模块201执行。
第一加载模块203,用于将所述基础功能组件对应的可执行文件加载入所述用户终端100的存储器111内。
在本实施例中,步骤S102可由第一加载模块203执行。
匹配模块202,用于响应功能启用指令,匹配对应的应用程序的独立功能组件。
在本实施例中,所述应用程序被预先按照所实现功能的不同而打包成包括多个功能组件,其中功能组件包括多个独立功能组件。步骤S103可以由匹配模块202执行。应用程序在运行后,可以实现多个互相独立的功能,每一个独立功能对应一个独立功能组件。独立功能组件只有在其对应的功能被使用时才进行加载执行。以减少不必要的存储空间占用。可选地,当用户需要启用应用程序中一个独立功能时,可以通过输入输出单元116生成与该独立功能对应的功能启用指令。例如,当用户需要使用淘宝客户端的搜索商品时,用户可通过点击搜索框触发搜索启动指令。用户终端100在获得功能启用指令后,根据获得的功能启动指令对应需要实现的第一功能,匹配对应的独立功能组件。请参考图6,匹配模块202包括以下子模块:
查询子模块2021,用于查询已解压的所述独立功能组件是否存在与第一功能相对应的可执行文件。
在本实施例中,子步骤S10311可以由查询子模块2021执行。
在其他实施例中,子步骤S10321可以由查询子模块2021执行。
获取子模块2022,用于获取所述应用程序中与第一功能相对应的未解压的所述独立功能组件;及还用于获取所述已解压的所述独立功能组件。
在本实施例中,子步骤S10312及子步骤S10313均可由获取子模块2022执行。可选地,若不存在与所述第一功能相对应的可执行文件,则获执行子步骤S10312;若存在与所述第一功能相对应的可执行文件,则执行子步骤S10313。
在其他实施例中,子步骤S10323及子步骤S10324均可由获取子模块2022执行。可选地,若存在与所述第一功能相对应的可执行文件且与所述第一功能相对应的可执行文件有效,则获取子模块2022执行子步骤S10323;当不存在与所述第一功能相对应的可执行文件或存在的与所述第一功能相对应的可执行文件无效,则获取子模块2022执行子步骤S10324。
在其他实施例中,如图7所示,匹配模块202还包括:判断子模块2023,用于判断与所述第一功能相对应的可执行文件是否有效。子步骤S10322可以由判断子模块2023执行。
获得模块201,还用于获得所述独立功能组件对应的可执行文件。
在本实施例中,步骤S104可以由获得模块201执行。可选地,可以是通过以下任意一种方式:解压与第一功能相对应的未解压的所述独立功能组件以获得所述可执行文件;或从所述已解压的所述独立功能组件中获得与第一功能相对应的可执行文件。
第一加载模块203,还用于加载所述独立功能组件对应的可执行文件。
在本实施例中,步骤S105可以由第一加载模块203执行。可选地,可以通过将所述独立功能组件对应的执行文件并入所述基础功能组件对应的可执行文件的方式执行。
获取模块204,用于获取所述独立功能组件对应的组件内容。
在本实施例中,步骤S106可以由获取模块204执行。
第二加载模块205,用于加载所述组件内容。
在本实施例中,步骤S107可以由第二加载模块205执行。
综上所述,本发明提供应用程序加载方法、装置及用户终端。应用程序加载方法,应用于用户终端,所述方法包括:响应功能启用指令,匹配对应的应用程序的独立功能组件,其中所述应用程序被预先按照所实现功能的不同而打包成包括多个功能组件,所述功能组件包括独立功能组件;获得所述独立功能组件对应的可执行文件;加载所述独立功能组件对应的可执行文件。需要使用的功能才加载对应可执行文件,使应用程序加载更加灵活,快捷。且避免了应用程序长时间占用大量临时存储器空间。进而提高用户终端存储空间的使用率,提高使用者的体验。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (15)

1.一种应用程序加载方法,其特征在于,应用于用户终端,所述方法包括:
响应功能启用指令,匹配对应的应用程序的独立功能组件,其中所述应用程序被预先按照所实现功能的不同而打包成包括多个功能组件,所述功能组件包括所述独立功能组件;
获得所述独立功能组件对应的可执行文件;
加载所述独立功能组件对应的可执行文件。
2.如权利要求1所述的应用程序加载方法,其特征在于,所述功能组件还包括基础功能组件,所述方法还包括:
侦测到所述应用程序启动时,获取所述基础功能组件对应的可执行文件;
将所述基础功能组件对应的可执行文件加载入所述用户终端的存储器内。
3.如权利要求2所述的应用程序加载方法,其特征在于,所述加载所述独立功能组件对应的执行文件的步骤包括:
将所述独立功能组件对应的执行文件并入所述基础功能组件对应的可执行文件。
4.如权利要求1所述的应用程序加载方法,其特征在于,所述响应功能启用指令,匹配对应的应用程序的独立功能组件的步骤包括:
查询已解压的所述独立功能组件是否存在与第一功能相对应的可执行文件;
若不存在与所述第一功能相对应的可执行文件,则获取所述应用程序中与第一功能相对应的未解压的所述独立功能组件;
若存在与所述第一功能相对应的可执行文件,则获取所述已解压的所述独立功能组件。
5.如权利要求1所述的应用程序加载方法,其特征在于,所述响应功能启用指令,匹配对应的应用程序的独立功能组件的步骤包括:
查询已解压的所述独立功能组件是否存在与第一功能相对应的可执行文件;
判断与所述第一功能相对应的可执行文件是否有效;
若不存在与所述第一功能相对应的可执行文件或存在的与所述第一功能相对应的可执行文件无效,则获取所述应用程序中与第一功能相对应的未解压的所述独立功能组件;
若存在与所述第一功能相对应的可执行文件且与所述第一功能相对应的可执行文件有效,则获取所述已解压的所述独立功能组件。
6.如权利要求4或5所述的应用程序加载方法,其特征在于,所述获得所述独立功能组件对应的可执行文件的步骤包括:
解压与第一功能相对应的未解压的所述独立功能组件以获得所述可执行文件;或从所述已解压的所述独立功能组件中获得与第一功能相对应的可执行文件。
7.如权利要求1所述的应用程序加载方法,其特征在于,在所述加载所述独立功能组件对应的可执行文件之后,所述方法还包括:
获取所述独立功能组件对应的组件内容;
加载所述组件内容。
8.一种应用程序加载装置,其特征在于,应用于用户终端,所述装置包括:
匹配模块,用于响应功能启用指令,匹配对应的应用程序的独立功能组件,其中所述应用程序被预先按照所实现功能的不同而打包成包括多个功能组件,所述功能组件包括所述独立功能组件;
获得模块,用于获得所述独立功能组件对应的可执行文件;
第一加载模块,用于加载所述独立功能组件对应的可执行文件。
9.如权利要求8所述的应用程序加载装置,其特征在于,所述功能组件还包括基础功能组件,
所述获得模块,还用于在侦测到所述应用程序启动时,获取所述基础功能组件对应的可执行文件;
所述第一加载模块,还用于将所述基础功能组件对应的可执行文件加载入所述用户终端的存储器内。
10.如权利要求9所述的应用程序加载装置,其特征在于,所述第一加载模块执行加载所述独立功能组件对应的执行文件的方式包括:
将所述独立功能组件对应的执行文件并入所述基础功能组件对应的可执行文件。
11.如权利要求8所述的应用程序加载装置,其特征在于,所述匹配模块包括:
查询子模块,用于查询已解压的所述独立功能组件是否存在与第一功能相对应的可执行文件;
获取子模块,用于获取所述应用程序中与第一功能相对应的未解压的所述独立功能组件;及还用于获取所述已解压的所述独立功能组件。
12.如权利要求11所述的应用程序加载装置,其特征在于,所述匹配模块还包括:
判断子模块,用于判断与所述第一功能相对应的可执行文件是否有效。
13.如权利要求11或12所述的应用程序加载装置,其特征在于,所述获得模块执行获得所述独立功能组件对应的可执行文件的方式包括以下任一一种:
解压与第一功能相对应的未解压的所述独立功能组件以获得所述可执行文件;或从所述已解压的所述独立功能组件中获得与第一功能相对应的可执行文件。
14.如权利要求8所述的应用程序加载装置,其特征在于,所述装置还包括:
获取模块,用于获取所述独立功能组件对应的组件内容;
第二加载模块,用于加载所述组件内容。
15.一种用户终端,其特征在于,所述用户终端包括:
存储器;
处理器;以及
应用程序加载装置,所述应用程序加载装置安装于所述存储器中并包括一个或多个由所述处理器执行的软件功能模组,所述应用程序加载装置包括:
匹配模块,用于响应功能启用指令,匹配对应的应用程序的独立功能组件,其中所述应用程序被预先按照所实现功能的不同而打包成包括多个功能组件,所述功能组件包括所述独立功能组件;
获得模块,用于获得所述独立功能组件对应的可执行文件;
第一加载模块,用于加载所述独立功能组件对应的可执行文件。
CN201710515088.4A 2017-06-29 2017-06-29 应用程序加载方法、装置及用户终端 Pending CN107329788A (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201710515088.4A CN107329788A (zh) 2017-06-29 2017-06-29 应用程序加载方法、装置及用户终端
RU2018108631A RU2018108631A (ru) 2017-06-29 2018-03-12 Способ, устройство и пользовательский терминал загрузки приложения
US15/919,708 US10860337B2 (en) 2017-06-29 2018-03-13 Method, device and user terminal for loading application
US16/023,768 US20190004828A1 (en) 2017-06-29 2018-06-29 Application loading method, user terminal, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710515088.4A CN107329788A (zh) 2017-06-29 2017-06-29 应用程序加载方法、装置及用户终端

Publications (1)

Publication Number Publication Date
CN107329788A true CN107329788A (zh) 2017-11-07

Family

ID=60198251

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710515088.4A Pending CN107329788A (zh) 2017-06-29 2017-06-29 应用程序加载方法、装置及用户终端

Country Status (3)

Country Link
US (2) US10860337B2 (zh)
CN (1) CN107329788A (zh)
RU (1) RU2018108631A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110096375A (zh) * 2019-03-29 2019-08-06 努比亚技术有限公司 一种应用程序共享数据方法、装置及计算机可读存储介质
WO2020073241A1 (zh) * 2018-10-10 2020-04-16 深圳市欢太科技有限公司 小游戏接入方法及相关设备
CN111552517A (zh) * 2019-01-23 2020-08-18 阿里巴巴集团控股有限公司 应用程序启动方法、装置、电子设备及计算机存储介质
CN111580836A (zh) * 2020-04-28 2020-08-25 浙江每日互动网络科技股份有限公司 数据处理方法及装置、电子设备和计算机可读存储介质
CN114201260A (zh) * 2021-12-17 2022-03-18 杭州逗酷软件科技有限公司 服务显示方法、装置、终端、存储介质及程序产品
CN114460873A (zh) * 2021-12-21 2022-05-10 深圳元戎启行科技有限公司 车载控制系统以及无人驾驶车辆
CN114860335A (zh) * 2022-04-27 2022-08-05 掌阅科技股份有限公司 应用程序的运行方法、电子设备及存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111240788A (zh) * 2020-01-16 2020-06-05 支付宝(杭州)信息技术有限公司 一种小程序页面的生成方法、装置及设备
CN116382674A (zh) * 2022-07-19 2023-07-04 深圳市星卡软件技术开发有限公司 汽车诊断设备的组件配置方法、设备、介质及电子设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040006637A1 (en) * 2002-04-25 2004-01-08 Pramote Kuacharoen Methods and systems for transmitting application software
CN101833464A (zh) * 2010-04-16 2010-09-15 深圳市五巨科技有限公司 一种移动终端分段加载应用程序的方法及装置
CN101980157A (zh) * 2010-10-13 2011-02-23 中兴通讯股份有限公司 移动终端开机启动方法及移动终端
CN102117245A (zh) * 2010-01-06 2011-07-06 浙江德景电子科技有限公司 嵌入式设备及其系统可执行文件分割加载和启动方法
CN102662703A (zh) * 2012-03-29 2012-09-12 奇智软件(北京)有限公司 一种应用程序插件加载方法及装置
CN103795761A (zh) * 2012-11-01 2014-05-14 腾讯科技(深圳)有限公司 一种网络游戏数据下载方法和系统
CN106547578A (zh) * 2015-09-21 2017-03-29 阿里巴巴集团控股有限公司 终端应用app的加载方法及装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7797431B2 (en) * 2001-02-09 2010-09-14 Willard Case Enhanced data exchange and functionality control system and method
US7685596B1 (en) * 2004-09-01 2010-03-23 The Mathworks, Inc. Deploying and distributing of applications and software components
US7685589B2 (en) * 2004-10-14 2010-03-23 Microsoft Corporation File loading synchronization
CN104937549A (zh) * 2013-01-03 2015-09-23 德国捷德有限公司 将由多个组件组成的应用加载到由多个组件组成的设备中的方法
FR3006526B1 (fr) * 2013-05-29 2015-06-26 Univ Pau Et Des Pays De L Adour Chargement dynamique de composants applicatifs
EP3039608B1 (en) * 2013-08-28 2018-07-04 McAfee, LLC Hardware and software execution profiling
US9870239B2 (en) * 2014-09-16 2018-01-16 Xiaomi Inc. Method and device for running application program
US10223526B2 (en) * 2015-05-21 2019-03-05 Airwatch Llc Generating packages for managed applications
US9934017B2 (en) * 2015-11-15 2018-04-03 Appdome Ltd. Method and a system for merging several binary executables
US9830611B1 (en) * 2016-07-07 2017-11-28 Kocomojo LLC Systems and methods for dynamically modifying functionality and content of a mobile application based on location criteria

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040006637A1 (en) * 2002-04-25 2004-01-08 Pramote Kuacharoen Methods and systems for transmitting application software
CN102117245A (zh) * 2010-01-06 2011-07-06 浙江德景电子科技有限公司 嵌入式设备及其系统可执行文件分割加载和启动方法
CN101833464A (zh) * 2010-04-16 2010-09-15 深圳市五巨科技有限公司 一种移动终端分段加载应用程序的方法及装置
CN101980157A (zh) * 2010-10-13 2011-02-23 中兴通讯股份有限公司 移动终端开机启动方法及移动终端
CN102662703A (zh) * 2012-03-29 2012-09-12 奇智软件(北京)有限公司 一种应用程序插件加载方法及装置
CN103795761A (zh) * 2012-11-01 2014-05-14 腾讯科技(深圳)有限公司 一种网络游戏数据下载方法和系统
CN106547578A (zh) * 2015-09-21 2017-03-29 阿里巴巴集团控股有限公司 终端应用app的加载方法及装置

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020073241A1 (zh) * 2018-10-10 2020-04-16 深圳市欢太科技有限公司 小游戏接入方法及相关设备
CN111552517A (zh) * 2019-01-23 2020-08-18 阿里巴巴集团控股有限公司 应用程序启动方法、装置、电子设备及计算机存储介质
CN111552517B (zh) * 2019-01-23 2023-04-25 阿里巴巴集团控股有限公司 应用程序启动方法、装置、电子设备及计算机存储介质
CN110096375A (zh) * 2019-03-29 2019-08-06 努比亚技术有限公司 一种应用程序共享数据方法、装置及计算机可读存储介质
CN111580836A (zh) * 2020-04-28 2020-08-25 浙江每日互动网络科技股份有限公司 数据处理方法及装置、电子设备和计算机可读存储介质
CN111580836B (zh) * 2020-04-28 2023-05-12 每日互动股份有限公司 数据处理方法及装置、电子设备和计算机可读存储介质
CN114201260A (zh) * 2021-12-17 2022-03-18 杭州逗酷软件科技有限公司 服务显示方法、装置、终端、存储介质及程序产品
CN114201260B (zh) * 2021-12-17 2024-07-12 杭州逗酷软件科技有限公司 服务显示方法、装置、终端、存储介质及程序产品
CN114460873A (zh) * 2021-12-21 2022-05-10 深圳元戎启行科技有限公司 车载控制系统以及无人驾驶车辆
CN114860335A (zh) * 2022-04-27 2022-08-05 掌阅科技股份有限公司 应用程序的运行方法、电子设备及存储介质

Also Published As

Publication number Publication date
RU2018108631A (ru) 2019-09-12
US20190004829A1 (en) 2019-01-03
US20190004828A1 (en) 2019-01-03
US10860337B2 (en) 2020-12-08

Similar Documents

Publication Publication Date Title
CN107329788A (zh) 应用程序加载方法、装置及用户终端
US10043056B1 (en) Analyzing writing using pressure sensing touchscreens
US20150310406A1 (en) Systems and Methods for Automated Invoice Processing
CN107888659A (zh) 用户请求的处理方法及系统
CN107783861B (zh) 交易回滚方法、装置、存储介质和计算机设备
CN106843660B (zh) 一种数据处理方法及其设备
US11625408B2 (en) Systems and methods for expedited large file processing
CN110335111A (zh) 数据处理方法、系统、终端及服务器
CN110704833A (zh) 数据权限配置方法、设备、电子设备及存储介质
CN107578338A (zh) 一种业务发布方法、装置及设备
CN110119386A (zh) 数据处理方法、数据处理装置、介质和计算设备
CN109558619B (zh) 基于建筑信息模型的数据处理方法、终端及可读存储介质
WO2009143557A1 (en) Systems and methods for managing business objects
US20190164144A1 (en) Systems and methods for one-tap buy order completion
CN107133245A (zh) 状态信息管理系统、方法及电子设备
CN112507323A (zh) 基于单向网络的模型训练方法、装置和计算设备
CN111753203A (zh) 一种卡号推荐方法、装置、设备和介质
CN112068781A (zh) 一种存储器的数据读写方法及相关设备
CN107301236A (zh) 应用搜索方法、移动终端、服务器及计算机可读存储介质
CN109034808B (zh) 一种支付类应用程序的运行方法、运行装置及终端设备
CN110782310A (zh) 从第三方平台异步获取用户属性信息的方法、装置和系统
CN110990007A (zh) 银行软件功能界面生成方法和装置
CN107609119B (zh) 文件处理方法、移动终端及计算机可读存储介质
CN110298751A (zh) 跨平台的交易数据处理方法、装置、终端及存储介质
CN110555687A (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
TA01 Transfer of patent application right

Effective date of registration: 20200611

Address after: 310052 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province

Applicant after: Alibaba (China) Co.,Ltd.

Address before: 510627 Guangdong city of Guangzhou province Whampoa Tianhe District Road No. 163 Xiping Yun Lu Yun Ping square B radio tower 15 layer self unit 02 (only for office use)

Applicant before: GUANGZHOU UC NETWORK TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
RJ01 Rejection of invention patent application after publication

Application publication date: 20171107

RJ01 Rejection of invention patent application after publication