CN103345405A - 应用程序的启动方法、装置和客户端 - Google Patents

应用程序的启动方法、装置和客户端 Download PDF

Info

Publication number
CN103345405A
CN103345405A CN2013102318300A CN201310231830A CN103345405A CN 103345405 A CN103345405 A CN 103345405A CN 2013102318300 A CN2013102318300 A CN 2013102318300A CN 201310231830 A CN201310231830 A CN 201310231830A CN 103345405 A CN103345405 A CN 103345405A
Authority
CN
China
Prior art keywords
kernel
module
application program
file
interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2013102318300A
Other languages
English (en)
Other versions
CN103345405B (zh
Inventor
陈康
艾知奇
孙明焱
张志和
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Kingsoft Internet Security Software Co Ltd
Conew Network Technology Beijing Co Ltd
Zhuhai Juntian Electronic Technology Co Ltd
Beijing Cheetah Mobile Technology Co Ltd
Beijing Cheetah Network Technology Co Ltd
Original Assignee
Beijing Kingsoft Internet Security Software Co Ltd
Conew Network Technology Beijing Co Ltd
Shell Internet Beijing Security Technology Co Ltd
Zhuhai Juntian Electronic Technology Co Ltd
Beijing Kingsoft Internet Science and 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 Beijing Kingsoft Internet Security Software Co Ltd, Conew Network Technology Beijing Co Ltd, Shell Internet Beijing Security Technology Co Ltd, Zhuhai Juntian Electronic Technology Co Ltd, Beijing Kingsoft Internet Science and Technology Co Ltd filed Critical Beijing Kingsoft Internet Security Software Co Ltd
Priority to CN201310231830.0A priority Critical patent/CN103345405B/zh
Publication of CN103345405A publication Critical patent/CN103345405A/zh
Application granted granted Critical
Publication of CN103345405B publication Critical patent/CN103345405B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明提供一种应用程序的启动方法、装置和客户端,应用程序对应的文件包括应用程序执行文件、至少一个内核文件和接口文件,其中,应用程序执行文件具有用户界面UI模块和代理模块,所述方法包括以下步骤:根据用户指令启动应用程序执行文件以创建主线程,并加载UI模块和代理模块,以生成应用程序的展示界面;通过主线程加载至少一个内核文件以创建应用程序的内核;以及内核通过代理模块和接口文件与UI模块进行通信以完成初始化。本发明实施例的方法,加快了启动速度,减少了用户等待时间,提升了用户体验。

Description

应用程序的启动方法、装置和客户端
技术领域
本发明涉及计算机技术领域,特别是指一种应用程序的启动方法、装置和客户端。
背景技术
目前,应用程序启动时主要经过以下步骤:首先点击应用程序图标,然后应用程序进行启动、加载相应的数据、界面进行初始化,对于大型的应用程序,还会在启动时展示一个画面,通过画面告诉用户应用程序正在加载,或者通过画面显示软件的相关信息,例如Visual C++(微软公司的C++开发工具,具有集成开发环境)、PhotoShop(Adobe Systems公司发行的图像处理软件)等等。
其中,浏览器启动时,首先加载内核文件,以进入浏览器主线程入口,并生成进程对象,然后需要初始化内核文件、数据库、io等辅助线程,初始化完成之后调用界面启动函数启动浏览器的主UI(UserInterface,用户界面)界面,
目前,至少存在以下问题:内核文件往往比较大,集合了所有的逻辑功能,特别是浏览器的内核文件,加载内核文件之后还需要做不同的初始化工作,然后用户才能看到浏览器的界面,启动过程缓慢,用户等待时间长,用户体验差。
发明内容
本发明旨在至少解决上述技术问题之一。
为此,本发明的第一个目的在于提出一种应用程序的启动方法。该方法加快了启动速度,减少了用户等待时间,提升了用户体验。
本发明的第二个目的在于提出一种应用程序的启动装置。
本发明的第三个目的在于提出一种客户端。
本发明的第四个目的在于提出一种应用程序。
本发明的第五个目的在于提出一种存储介质。
为了实现上述目的,本发明第一方面实施例的应用程序的启动方法,应用程序对应的文件包括应用程序执行文件、至少一个内核文件和接口文件,其中,所述应用程序执行文件具有用户界面UI模块和代理模块,所述方法包括以下步骤:根据用户指令启动所述应用程序执行文件以创建主线程,并加载所述UI模块和代理模块,以生成所述应用程序的展示界面;通过所述主线程加载所述至少一个内核文件以创建所述应用程序的内核;以及所述内核通过所述代理模块和所述接口文件与所述UI模块进行通信以完成初始化。
根据本发明实施例的应用程序的启动方法,应用程序将内核的UI界面实现部分分离出来加入至应用程序执行文件,并通过代理模块和接口文件实现内核和UI模块之间的相互通信以实现应用程序的启动,可在加载UI模块的同时加载内核文件,并通过代理模块和接口文件实现应用程序的初始化,一方面UI模块和内核文件相互分离,并通过代理模块使得UI模块加载和内核文件加载实现之间不可知,大大降低了功能逻辑的实现复杂度,另一方面使得应用程序在启动时UI界面能够快速响应并显示,并且不影响应用程序的内核加载过程,加快了启动速度,减少了用户等待时间,提升了用户体验。
在本发明的一个实施例中,所述内核通过所述代理模块和所述接口文件与所述UI模块进行通信以完成初始化进一步包括:所述内核通知所述代理模块所述内核文件加载完成;所述代理模块根据所述通知获取所述UI模块在加载时生成的所述展示界面中当前窗口的状态数据;以及所述代理模块通过所述接口文件将所述当前窗口的状态数据发送至所述内核,以使得所述内核根据加载的所述至少一个内核文件对所述当前窗口的状态数据进行渲染。由此,进一步提升了启动速度,减少了用户等待时间,提升了用户体验。
在本发明的一个实施例中,所述通过所述主进程加载所述至少一个内核文件进一步包括:所述主进程直接加载所述至少一个内核文件。由此,主进程在加载UI模块之后可直接加载内核文件,内核文件的加载和UI模块的加载同步实现,无需创建其他工作线程,速度快。
在本发明的另一个实施例中,所述通过所述主进程加载所述至少一个内核文件进一步包括:所述主进程创建工作线程,通过所述工作线程加载所述至少一个内核文件。由此,主线程在加载UI模块的同时可创建工作线程加载内核文件,异步实现加载UI模块生成应用程序的展示界面和加载内核文件,使得应用程序的启动过程中更加顺畅。
在本发明的一个实施例中,还包括:所述UI模块获取所述应用程序的用户数据;所述UI模块对所述用户数据进行解析以获取所述应用程序在最后关闭时的状态数据;所述UI模块将所述最后关闭时的状态数据通过所述代理模块和所述接口文件发送至所述内核,以使得所述内核根据加载的所述至少一个内核文件对所述最后关闭时的状态数据进行渲染和恢复。由此,可恢复应用程序最后关闭时的状态,进一步提升用户体验。
在本发明的一个实施例中,所述执行文件和所述内核文件共享所述接口文件。
在本发明的一个实施例中,所述应用程序为浏览器。
为了实现上述目的,本发明第二方面实施例的应用程序的启动装置,应用程序对应的文件包括应用程序执行文件、至少一个内核文件和接口文件,其中,所述应用程序执行文件具有用户界面UI模块和代理模块,所述装置包括:展示界面生成模块,用于根据用户指令启动所述应用程序执行文件以创建主线程,并加载所述UI模块和代理模块,以生成所述应用程序的展示界面;内核创建模块,用于通过所述主线程加载所述至少一个内核文件以创建所述应用程序的内核;以及初始化模块,用于根据所述内核通过所述代理模块和所述接口文件与所述UI模块进行通信以完成初始化。
根据本发明实施例的应用程序的启动装置,应用程序将内核的UI界面实现部分分离出来加入至应用程序执行文件,并通过代理模块和接口文件实现内核和UI模块之间的相互通信以实现应用程序的启动,可在加载UI模块的同时加载内核文件,并通过代理模块和接口文件实现应用程序的初始化,一方面UI模块和内核文件相互分离,并通过代理模块使得UI模块加载和内核文件加载实现之间不可知,大大降低了功能逻辑的实现复杂度,另一方面使得应用程序在启动时UI界面能够快速响应并显示,并且不影响应用程序的内核加载过程,加快了启动速度,减少了用户等待时间,提升了用户体验。
在本发明的一个实施例中,所述初始化模块还用于:根据所述内核通知所述代理模块所述内核文件加载完成,并通过所述代理模块根据所述通知获取所述UI模块在加载时生成的所述展示界面中当前窗口的状态数据;以及根据所述代理模块通过所述接口文件将所述当前窗口的状态数据发送至所述内核,以使得所述内核根据加载的所述至少一个内核文件对所述当前窗口的状态数据进行渲染。由此,进一步提升了启动速度,减少了用户等待时间,提升了用户体验。
在本发明的一个实施例中,所述内核创建模块还用于:根据所述主进程直接加载所述至少一个内核文件。由此,主进程在加载UI模块之后可直接加载内核文件,内核文件的加载和UI模块的加载同步实现,无需创建其他工作线程,速度快。
在本发明的另一个实施例中,所述内核创建模块还用于:根据所述主进程创建工作线程,通过所述工作线程加载所述至少一个内核文件。由此,主线程在加载UI模块的同时可创建工作线程加载内核文件,异步实现加载UI模块生成应用程序的展示界面和加载内核文件,使得应用程序的启动过程中更加顺畅。
在本发明的一个实施例中,还包括:用户数据恢复模块,用于根据所述UI模块获取所述应用程序的用户数据,并根据所述UI模块对所述用户数据进行解析以获取所述应用程序在最后关闭时的状态数据,以及根据所述UI模块将所述最后关闭时的状态数据通过所述代理模块和所述接口文件发送至所述内核,以使得所述内核根据加载的所述至少一个内核文件对所述最后关闭时的状态数据进行渲染和恢复。由此,可恢复应用程序最后关闭时的状态,进一步提升用户体验。
在本发明的一个实施例中,所述执行文件和所述内核文件共享所述接口文件。
在本发明的一个实施例中,所述应用程序为浏览器。
为了实现上述目的,本发明第三方面实施例的客户端,包括:外壳,处理器和电路板;所述电路板安置在所述外壳围成的空间内部,所述处理器设置在所述电路板上;所述处理器用于运行应用程序,所述应用程序对应的文件包括应用程序执行文件、至少一个内核文件和接口文件,其中,所述应用程序执行文件具有用户界面UI模块和代理模块,所述处理器具体用于:根据用户指令启动所述应用程序执行文件以创建主线程,并加载所述UI模块和代理模块,以生成所述应用程序的展示界面;通过所述主线程加载所述至少一个内核文件以创建所述应用程序的内核;以及根据所述内核通过所述代理模块和所述接口文件与所述UI模块进行通信以完成初始化。
根据本发明实施例的客户端,应用程序将内核的UI界面实现部分分离出来加入至应用程序执行文件,并通过代理模块和接口文件实现内核和UI模块之间的相互通信以实现应用程序的启动,可在加载UI模块的同时加载内核文件,并通过代理模块和接口文件实现应用程序的初始化,一方面UI模块和内核文件相互分离,并通过代理模块使得UI模块加载和内核文件加载实现之间不可知,大大降低了功能逻辑的实现复杂度,另一方面使得应用程序在启动时UI界面能够快速响应并显示,并且不影响应用程序的内核加载过程,加快了启动速度,减少了用户等待时间,提升了用户体验。
在本发明的一个实施例中,所述处理器还具体用于:根据所述内核通知所述代理模块所述内核文件加载完成;通过所述代理模块根据所述通知获取所述UI模块在加载时生成的所述展示界面中当前窗口的状态数据;以及根据所述代理模块通过所述接口文件将所述当前窗口的状态数据发送至所述内核,以使得所述内核根据加载的所述至少一个内核文件对所述当前窗口的状态数据进行渲染。由此,进一步提升了启动速度,减少了用户等待时间,提升了用户体验。
在本发明的一个实施例中,所述处理器还具体用于:根据所述主进程直接加载所述至少一个内核文件。由此,主进程在加载UI模块之后可直接加载内核文件,内核文件的加载和UI模块的加载同步实现,无需创建其他工作线程,速度快。
在本发明的另一个实施例中,所述处理器还具体用于:根据所述主进程创建工作线程,通过所述工作线程加载所述至少一个内核文件。由此,主线程在加载UI模块的同时可创建工作线程加载内核文件,异步实现加载UI模块生成应用程序的展示界面和加载内核文件,使得应用程序的启动过程中更加顺畅。
在本发明的一个实施例中,所述处理器还具体用于:根据所述UI模块获取所述应用程序的用户数据;根据所述UI模块对所述用户数据进行解析以获取所述应用程序在最后关闭时的状态数据;根据所述UI模块将所述最后关闭时的状态数据通过所述代理模块和所述接口文件发送至所述内核,以使得所述内核根据加载的所述至少一个内核文件对所述最后关闭时的状态数据进行渲染和恢复。由此,可恢复应用程序最后关闭时的状态,进一步提升用户体验。
在本发明的一个实施例中,所述执行文件和所述内核文件共享所述接口文件。
在本发明的一个实施例中,所述应用程序为浏览器。
为了实现上述目的,本发明第四方面实施例的应用程序用于在运行时执行如上所述第一方面的任一项实施例的应用程序的启动方法。
根据本发明实施例的应用程序,应用程序将内核的UI界面实现部分分离出来加入至应用程序执行文件,并通过代理模块和接口文件实现内核和UI模块之间的相互通信以实现应用程序的启动,可在加载UI模块的同时加载内核文件,并通过代理模块和接口文件实现应用程序的初始化,一方面UI模块和内核文件相互分离,并通过代理模块使得UI模块加载和内核文件加载实现之间不可知,大大降低了功能逻辑的实现复杂度,另一方面使得应用程序在启动时UI界面能够快速响应并显示,并且不影响应用程序的内核加载过程,加快了启动速度,减少了用户等待时间,提升了用户体验。
为了实现上述目的,本发明第五方面实施例的存储介质用于存储应用程序,所述应用程序用于在运行时执行如上所述第一方面的任一项实施例的应用程序的启动方法。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中,
图1是根据本发明一个实施例的应用程序的启动方法的流程图;
图2是根据本发明另一个实施例的应用程序的启动方法的流程图;
图3是根据本发明又一个实施例的应用程序的启动方法的流程图;
图4是根据本发明再一个实施例的应用程序的启动方法的流程图;
图5是根据本发明一个实施例的应用程序的启动装置的结构框图;
图6是根据本发明另一个实施例的应用程序的启动装置的结构框图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
下面参考附图描述根据本发明实施例的应用程序的启动方法、装置和客户端。
目前,应用程序在启动时启动过程缓慢,用户等待时间长,用户体验差。以Chrome浏览器(谷歌公司发布的一款浏览器)为例具体分析,Chrome浏览器在启动时首先加载Chrome.dll(dll,Dynamic Link Library,动态链接库)文件,以此进入浏览器主线程入口,并生成进程对象,然后需要初始化内核文件、数据库、io等辅助线程,初始化完成之后调用browser_init.Start函数启动主UI界面,一般来说用户设置的主页地址也会在该函数中被打开,最后调用browser->window()->Show()显示浏览器UI窗口,对应的url(Uniform ResourceLocator,统一资源定位符)页面也将被显示,此时浏览器窗口才显示出来。随着Chrome.dll文件越来越庞大,例如目前已经大于40M,用户等待时间将会变得更长,用户体验更差。为了解决上述问题,本发明提出一种应用程序的启动方法、装置和移动终端。
图1是根据本发明一个实施例的应用程序的启动方法的流程图。如图1所示,应用程序对应的文件包括应用程序执行文件、至少一个内核文件和接口文件,其中,应用程序执行文件具有用户界面UI模块和代理模块,应用程序的启动方法包括以下步骤。
S101,根据用户指令启动应用程序执行文件以创建主线程,并加载UI模块和代理模块,以生成应用程序的展示界面。
其中,应用程序执行文件可以是以exe为扩展名的执行文件,当用户点击该应用程序执行文件时即可进行应用程序的启动;内核文件集合了应用程序的所有功能,内核文件为包含可由多个程序同时使用的代码和数据的库,例如,Chrome浏览器的Chrome.dll文件;接口文件是根据预设通信协议生成的接口集合,应用程序中的内部功能模块可通过该预设通信协议相互通信。
具体地,加载UI模块以生成应用程序的展示界面,例如,浏览器的展示界面包括浏览器browser界面,包括标签页tab、地址栏、收藏栏等界面展示的相关部分,但是html页面区域除外,同时加载代理模块,UI模块可通过加载的代理模块与之后创建的应用程序的内核进行通信,通过代理模块将UI模块和内核进行隔离,UI模块和内核之间相互不可知,大大降低内核实现功能逻辑的复杂度。
S102,通过主线程加载至少一个内核文件以创建应用程序的内核。
其中,该至少一个内核文件中不包括UI界面的实现部分。应当理解,通过主线程加载内核文件可以是直接通过主线程进行加载,或者通过主线程生成其他的工作线程进行加载,将在后续的实施例中详细叙述。
S103,内核通过代理模块和接口文件与UI模块进行通信以完成初始化。
在本发明的一个实施例中,执行文件和内核文件共享接口文件。
根据本发明实施例的应用程序的启动方法,应用程序将内核的UI界面实现部分分离出来加入至应用程序执行文件,并通过代理模块和接口文件实现内核和UI模块之间的相互通信以实现应用程序的启动,可在加载UI模块的同时加载内核文件,并通过代理模块和接口文件实现应用程序的初始化,一方面UI模块和内核文件相互分离,并通过代理模块使得UI模块加载和内核文件加载实现之间不可知,大大降低了功能逻辑的实现复杂度,另一方面使得应用程序在启动时UI界面能够快速响应并显示,并且不影响应用程序的内核加载过程,加快了启动速度,减少了用户等待时间,提升了用户体验。
在本发明的一个实施例中,应用程序为浏览器。其中,Chrome浏览器的内核文件为一个。应当理解的是,本发明实施例的应用程序的启动方法可适用于多种应用程序,这些应用程序的内核文件庞大,加载数据缓慢,采用本发明实施例的方法,可按照应用程序的实际启动信息将UI界面从内核文件中分离出来,内核文件只实现功能逻辑部分,由此分别实现加载,在启动时UI界面能够快速响应并显示,并且不影响应用程序的内核加载过程,加快了启动速度,减少了用户等待时间,提升了用户体验。
图2是根据本发明另一个实施例的应用程序的启动方法的流程图。内核通过代理模块和接口文件与UI模块进行通信以完成初始化,具体地,如图2所示,应用程序的启动方法包括以下步骤。
S201,根据用户指令启动应用程序执行文件以创建主线程,并加载UI模块和代理模块,以生成应用程序的展示界面。
S202,通过主线程加载至少一个内核文件以创建应用程序的内核。
S203,内核通知代理模块内核文件加载完成。
S204,代理模块根据通知获取UI模块在加载时生成的展示界面中当前窗口的状态数据。
具体地,代理模块读取UI模块在加载时生成的展示界面中当前窗口的状态数据,例如,浏览器标签页的url、最后关闭页的url等。
S205,代理模块通过接口文件将当前窗口的状态数据发送至内核,以使得内核根据加载的至少一个内核文件对当前窗口的状态数据进行渲染。
例如,加载的内核文件对标签页的url、最后关闭页的url等进行渲染。
根据本发明实施例的应用程序的启动方法,内核通过代理模块和接口文件与UI模块进行通信以完成初始化应用程序,进一步提升了启动速度,减少了用户等待时间,提升了用户体验。
由于加载UI模块生成应用程序的展示界面和加载内核文件两者之间可以相互独立,可以异步实现,还可以同步实现,下面结合图3和图4具体说明。
图3是根据本发明又一个实施例的应用程序的启动方法的流程图。在本发明的一个实施例中,主进程加载内核文件,同步实现加载UI模块生成应用程序的展示界面和加载内核文件,具体地,如图3所示,应用程序的启动方法包括以下步骤。
S301,根据用户指令启动应用程序执行文件以创建主线程,并加载UI模块和代理模块,以生成应用程序的展示界面。
S302,主进程直接加载至少一个内核文件以创建应用程序的内核。
S303,内核通过代理模块和接口文件与UI模块进行通信以完成初始化。
根据本发明实施例的应用程序的启动方法,主进程在加载UI模块之后可直接加载内核文件,内核文件的加载和UI模块的加载同步实现,无需创建其他工作线程,速度快。
图4是根据本发明再一个实施例的应用程序的启动方法的流程图。在本发明的一个实施例中,主进程创建工作线程,通过工作线程加载内核文件,异步实现加载UI模块生成应用程序的展示界面和加载内核文件,具体地,如图4所示,应用程序的启动方法包括以下步骤。
S401,根据用户指令启动应用程序执行文件以创建主线程,并加载UI模块和代理模块,以生成应用程序的展示界面。
S402,主进程创建工作线程,通过工作线程加载至少一个内核文件以创建应用程序的内核。
S403,内核通过代理模块和接口文件与UI模块进行通信以完成初始化。
根据本发明实施例的应用程序的启动方法,主线程在加载UI模块的同时可创建工作线程加载内核文件,异步实现加载UI模块生成应用程序的展示界面和加载内核文件,使得应用程序的启动过程中更加顺畅。
在本发明的一个实施例中,还包括:UI模块获取应用程序的用户数据;UI模块对用户数据进行解析以获取应用程序在最后关闭时的状态数据;UI模块将最后关闭时的状态数据通过代理模块和接口文件发送至内核,以使得内核根据加载的至少一个内核文件对最后关闭时的状态数据进行渲染和恢复。
具体地,用户数据也需要在UI模块中进行解析,例如,浏览器的最后关闭页实际存储了最后关闭时的多个浏览器browser界面,每个相应的browser有多个标签页tab,每个tab的当前状态等数据信息,都会在浏览器程序中进行记录。当浏览器再次启动的时候,需先获取最后关闭时的状态数据,发现需要恢复最后关闭时的状态数据时,从记录文件读取后直接解析,然后UI模块根据记录文件创建若干个browser,每个browser中创建若干个tab,显示在UI界面中。代理模块将这些tab的url和状态信息传送给接口文件,由加载的至少一个内核文件实现对所有tab页面的恢复和渲染。由此,可恢复浏览器最后关闭时的状态,进一步提升用户体验。
应当理解,如果UI模块未从内核文件中分离出来时,可直接调用接口文件并通过代理模块实现上述功能,本发明的上层UI模块有两种状态,一种是挂载了内核文件,一种是没有挂载内核文件,应用程序启动时实际上UI模块是从未挂载内核文件的状态变成了挂载内核文件的状态,通过代理模块和接口文件使两种状态对UI模块应用程序的功能逻辑的实现不可知,大大降低了功能逻辑的实现复杂度,并实现对内核文件功能的接口输出,即通过接口文件进行输出,应用程序在启动后界面快速响应并显示,且不影响应用程序功能。
为了实现上述实施例,本发明还提出一种应用程序的启动装置。
图5是根据本发明一个实施例的应用程序的启动装置的结构框图。如图5所示,应用程序的启动装置包括:展示界面生成模块10、内核创建模块20和初始化模块30。
具体地,应用程序对应的文件包括应用程序执行文件、至少一个内核文件和接口文件,其中,应用程序执行文件具有用户界面UI模块和代理模块。其中,应用程序执行文件可以是以exe为扩展名的执行文件,当用户点击该应用程序执行文件时即可进行应用程序的启动;内核文件集合了应用程序的所有功能,内核文件为包含可由多个程序同时使用的代码和数据的库,例如,Chrome浏览器的Chrome.dll文件;接口文件是根据预设通信协议生成的接口集合,应用程序中的内部功能模块可通过该预设通信协议相互通信。
展示界面生成模块10用于根据用户指令启动应用程序执行文件以创建主线程,并加载UI模块和代理模块,以生成应用程序的展示界面。其中,加载UI模块以生成应用程序的展示界面,例如,浏览器的展示界面包括浏览器browser界面,包括标签页tab、地址栏、收藏栏等界面展示的相关部分,但是html页面区域除外,同时加载代理模块,UI模块可通过加载的代理模块与之后创建的应用程序的内核进行通信,通过代理模块将UI模块和内核进行隔离,UI模块和内核之间相互不可知,大大降低内核实现功能逻辑的复杂度。
内核创建模块20用于通过主线程加载至少一个内核文件以创建应用程序的内核。其中,该内核文件中不包括UI界面的实现部分。应当理解,通过主线程加载内核文件可以是直接通过主线程进行加载,或者通过主线程生成其他的工作线程进行加载,将在后续的实施例中详细叙述。
初始化模块30用于根据内核通过代理模块和接口文件与UI模块进行通信以完成初始化。
在本发明的一个实施例中,执行文件和内核文件共享接口文件。
根据本发明实施例的应用程序的启动装置,应用程序将内核的UI界面实现部分分离出来加入至应用程序执行文件,并通过代理模块和接口文件实现内核和UI模块之间的相互通信以实现应用程序的启动,可在加载UI模块的同时加载内核文件,并通过代理模块和接口文件实现应用程序的初始化,一方面UI模块和内核文件相互分离,并通过代理模块使得UI模块加载和内核文件加载实现之间不可知,大大降低了功能逻辑的实现复杂度,另一方面使得应用程序在启动时UI界面能够快速响应并显示,并且不影响应用程序的内核加载过程,加快了启动速度,减少了用户等待时间,提升了用户体验。
在本发明的一个实施例中,应用程序为浏览器。其中,Chrome浏览器的内核文件为一个。应当理解的是,本发明实施例的应用程序的启动装置可适用于多种应用程序,这些应用程序的内核文件庞大,加载数据缓慢,采用本发明实施例的装置,可按照应用程序的实际启动信息将UI界面从内核文件中分离出来,内核文件只实现功能逻辑部分,由此分别实现加载,在启动时UI界面能够快速响应并显示,并且不影响应用程序的内核加载过程,加快了启动速度,减少了用户等待时间,提升了用户体验。
在本发明的一个实施例中,初始化模块30还用于:根据内核通知代理模块内核文件加载完成,并通过代理模块根据通知获取UI模块在加载时生成的展示界面中当前窗口的状态数据;以及根据代理模块通过接口文件将当前窗口的状态数据发送至内核,以使得内核根据加载的至少一个内核文件对当前窗口的状态数据进行渲染。具体地,代理模块读取UI模块在加载时生成的展示界面中当前窗口的状态数据,例如,浏览器标签页的url、最后关闭页的url等,加载的内核文件对标签页的url、最后关闭页的url等进行渲染。由此,进一步提升了启动速度,减少了用户等待时间,提升了用户体验。
由于加载UI模块生成应用程序的展示界面和加载内核文件两者之间可以相互独立,可以异步实现,还可以同步实现。
在本发明的一个实施例中,内核创建模块20还用于:根据主进程直接加载至少一个内核文件。主进程在加载UI模块之后可直接加载内核文件,内核文件的加载和UI模块的加载同步实现,无需创建其他工作线程,速度快。
在本发明的另一个实施例中,内核创建模块20还用于:根据主进程创建工作线程,通过工作线程加载至少一个内核文件。主线程在加载UI模块的同时可创建工作线程加载内核文件,异步实现加载UI模块生成应用程序的展示界面和加载内核文件,使得应用程序的启动过程中更加顺畅。
图6是根据本发明另一个实施例的应用程序的启动装置的结构框图。如图6所示,应用程序的启动装置包括:展示界面生成模块10、内核创建模块20、初始化模块30和用户数据恢复模块40。
具体地,用户数据恢复模块40用于根据UI模块获取应用程序的用户数据,并根据UI模块对用户数据进行解析以获取应用程序在最后关闭时的状态数据,以及根据UI模块将最后关闭时的状态数据通过代理模块和接口文件发送至内核,以使得内核根据加载的至少一个内核文件对最后关闭时的状态数据进行渲染和恢复。
更具体地,用户数据也需要在UI模块中进行解析,例如,浏览器的最后关闭页实际存储了最后关闭时的多个浏览器browser界面,每个相应的browser有多个标签页tab,每个tab的当前状态等数据信息,都会在浏览器程序中进行记录。当浏览器再次启动的时候,需先获取最后关闭时的状态数据,发现需要恢复最后关闭时的状态数据时,从记录文件读取后直接解析,然后UI模块根据记录文件创建若干个browser,每个browser中创建若干个tab,显示在UI界面中。代理模块将这些tab的url和状态信息传送给接口文件,由加载的至少一个内核文件实现对所有tab页面的恢复和渲染。
由此,可恢复应用程序最后关闭时的状态,进一步提升用户体验。
为了实现上述实施例,本发明还提出一种客户端。
一种客户端,包括:外壳,处理器和电路板;电路板安置在外壳围成的空间内部,处理器设置在电路板上;处理器用于运行应用程序,应用程序对应的文件包括应用程序执行文件、至少一个内核文件和接口文件,其中,应用程序执行文件具有用户界面UI模块和代理模块,处理器具体用于:
根据用户指令启动应用程序执行文件以创建主线程,并加载UI模块和代理模块,以生成应用程序的展示界面;通过主线程加载至少一个内核文件以创建应用程序的内核,其中,该至少一个内核文件中不包括UI界面的实现部分;以及根据内核通过代理模块和接口文件与UI模块进行通信以完成初始化。
其中,应用程序执行文件可以是以exe为扩展名的执行文件,当用户点击该应用程序执行文件时即可进行应用程序的启动;内核文件集合了应用程序的所有功能,内核文件为包含可由多个程序同时使用的代码和数据的库,例如,Chrome浏览器的Chrome.dll文件;接口文件是根据预设通信协议生成的接口集合,应用程序中的内部功能模块可通过该预设通信协议相互通信。
另外,加载UI模块以生成应用程序的展示界面,例如浏览器的展示界面包括浏览器browser界面,包括标签页tab、地址栏、收藏栏等界面展示的相关部分,但是html页面区域除外,同时加载代理模块,UI模块可通过加载的代理模块与之后创建的应用程序的内核进行通信,通过代理模块将UI模块和内核进行隔离,UI模块和内核之间相互不可知,大大降低内核实现功能逻辑的复杂度。
在本发明的一个实施例中,执行文件和内核文件共享接口文件。
根据本发明实施例的客户端,应用程序将内核的UI界面实现部分分离出来加入至应用程序执行文件,并通过代理模块和接口文件实现内核和UI模块之间的相互通信以实现应用程序的启动,可在加载UI模块的同时加载内核文件,并通过代理模块和接口文件实现应用程序的初始化,一方面UI模块和内核文件相互分离,并通过代理模块使得UI模块加载和内核文件加载实现之间不可知,大大降低了功能逻辑的实现复杂度,另一方面使得应用程序在启动时UI界面能够快速响应并显示,并且不影响应用程序的内核加载过程,加快了启动速度,减少了用户等待时间,提升了用户体验。
在本发明的一个实施例中,应用程序为浏览器。其中,Chrome浏览器的内核文件为一个。应当理解的是,本发明的实施例适用于多种应用程序,这些应用程序的内核文件庞大,加载数据缓慢,采用本发明实施例的客户端,可按照应用程序的实际启动信息将UI界面从内核文件中分离出来,内核文件只实现功能逻辑部分,由此分别实现加载,在启动时UI界面能够快速响应并显示,并且不影响应用程序的内核加载过程,加快了启动速度,减少了用户等待时间,提升了用户体验。
在本发明的一个实施例中,处理器还具体用于:根据内核通知代理模块内核文件加载完成;通过代理模块根据通知获取UI模块在加载时生成的展示界面中当前窗口的状态数据;以及根据代理模块通过接口文件将当前窗口的状态数据发送至内核,以使得内核根据加载的至少一个内核文件对当前窗口的状态数据进行渲染。具体地,代理模块读取UI模块在加载时生成的展示界面中当前窗口的状态数据,例如,浏览器标签页的url、最后关闭页的url等,加载的内核文件对标签页的url、最后关闭页的url等进行渲染。由此,内核通过代理模块和接口文件与UI模块进行通信以完成初始化应用程序,进一步提升了启动速度,减少了用户等待时间,提升了用户体验。
由于加载UI模块生成应用程序的展示界面和加载内核文件两者之间可以相互独立,可以异步实现,还可以同步实现。
在本发明的一个实施例中,处理器还具体用于:根据主进程直接加载至少一个内核文件。主进程在加载UI模块之后可直接加载内核文件,内核文件的加载和UI模块的加载同步实现,无需创建其他工作线程,速度快。
在本发明的另一个实施例中,处理器还具体用于:根据主进程创建工作线程,通过工作线程加载至少一个内核文件。主线程在加载UI模块的同时可创建工作线程加载内核文件,异步实现加载UI模块生成应用程序的展示界面和加载内核文件,使得应用程序的启动过程中更加顺畅。
在本发明的一个实施例中,处理器还具体用于:根据UI模块获取应用程序的用户数据;根据UI模块对用户数据进行解析以获取应用程序在最后关闭时的状态数据;根据UI模块将最后关闭时的状态数据通过代理模块和接口文件发送至内核,以使得内核根据加载的至少一个内核文件对最后关闭时的状态数据进行渲染和恢复。
具体地,用户数据也需要在UI模块中进行解析,例如,浏览器的最后关闭页实际存储了最后关闭时的多个浏览器browser界面,每个相应的browser有多个标签页tab,每个tab的当前状态等数据信息,都会在浏览器中进行记录。当浏览器再次启动的时候,需先获取最后关闭时的状态数据,发现需要恢复最后关闭时的状态数据时,从记录文件读取后直接解析,然后UI模块根据记录文件创建若干个browser,每个browser中创建若干个tab,显示在UI界面中。代理模块将这些tab的url和状态信息传送给接口文件,由加载的至少一个内核文件实现对所有tab页面的恢复和渲染。由此,可恢复应用程序最后关闭时的状态,进一步提升用户体验。
为了实现上述实施例,本发明还提出一种应用程序。
一种应用程序,该应用程序用于在运行时执行如上所述任一项实施例所述的应用程序的启动方法。
根据本发明实施例的应用程序,应用程序将内核的UI界面实现部分分离出来加入至应用程序执行文件,并通过代理模块和接口文件实现内核和UI模块之间的相互通信以实现应用程序的启动,可在加载UI模块的同时加载内核文件,并通过代理模块和接口文件实现应用程序的初始化,一方面UI模块和内核文件相互分离,并通过代理模块使得UI模块加载和内核文件加载实现之间不可知,大大降低了功能逻辑的实现复杂度,另一方面使得应用程序在启动时UI界面能够快速响应并显示,并且不影响应用程序的内核加载过程,加快了启动速度,减少了用户等待时间,提升了用户体验。
为了实现上述实施例,本发明还提出一种存储介质。
一种存储介质,用于存储应用程序,该应用程序用于在运行时执行如上所述任一项实施例所述的应用程序的启动方法。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
在本发明各方法实施例中,所述各步骤的序号并不能用于限定各步骤的先后顺序,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,对各步骤的先后变化也在本发明的保护范围之内。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。

Claims (21)

1.一种应用程序的启动方法,其特征在于,应用程序对应的文件包括应用程序执行文件、至少一个内核文件和接口文件,其中,所述应用程序执行文件具有用户界面UI模块和代理模块,所述方法包括以下步骤:
根据用户指令启动所述应用程序执行文件以创建主线程,并加载所述UI模块和代理模块,以生成所述应用程序的展示界面;
通过所述主线程加载所述至少一个内核文件以创建所述应用程序的内核;以及
所述内核通过所述代理模块和所述接口文件与所述UI模块进行通信以完成初始化。
2.如权利要求1所述的方法,其特征在于,所述内核通过所述代理模块和所述接口文件与所述UI模块进行通信以完成初始化进一步包括:
所述内核通知所述代理模块所述内核文件加载完成;
所述代理模块根据所述通知获取所述UI模块在加载时生成的所述展示界面中当前窗口的状态数据;以及
所述代理模块通过所述接口文件将所述当前窗口的状态数据发送至所述内核,以使得所述内核根据加载的所述至少一个内核文件对所述当前窗口的状态数据进行渲染。
3.如权利要求1或2所述的方法,其特征在于,所述通过所述主进程加载所述至少一个内核文件进一步包括:
所述主进程直接加载所述至少一个内核文件。
4.如权利要求1或2所述的方法,其特征在于,所述通过所述主进程加载所述至少一个内核文件进一步包括:
所述主进程创建工作线程,通过所述工作线程加载所述至少一个内核文件。
5.如权利要求1所述的方法,其特征在于,还包括:
所述UI模块获取所述应用程序的用户数据;
所述UI模块对所述用户数据进行解析以获取所述应用程序在最后关闭时的状态数据;
所述UI模块将所述最后关闭时的状态数据通过所述代理模块和所述接口文件发送至所述内核,以使得所述内核根据加载的所述至少一个内核文件对所述最后关闭时的状态数据进行渲染和恢复。
6.如权利要求1所述的方法,其特征在于,所述执行文件和所述内核文件共享所述接口文件。
7.如权利要求1所述的方法,其特征在于,所述应用程序为浏览器。
8.一种应用程序的启动装置,其特征在于,应用程序对应的文件包括应用程序执行文件、至少一个内核文件和接口文件,其中,所述应用程序执行文件具有用户界面UI模块和代理模块,所述装置包括:
展示界面生成模块,用于根据用户指令启动所述应用程序执行文件以创建主线程,并加载所述UI模块和代理模块,以生成所述应用程序的展示界面;
内核创建模块,用于通过所述主线程加载所述至少一个内核文件以创建所述应用程序的内核;以及
初始化模块,用于根据所述内核通过所述代理模块和所述接口文件与所述UI模块进行通信以完成初始化。
9.如权利要求8所述的装置,其特征在于,所述初始化模块还用于:根据所述内核通知所述代理模块所述内核文件加载完成,并通过所述代理模块根据所述通知获取所述UI模块在加载时生成的所述展示界面中当前窗口的状态数据;以及根据所述代理模块通过所述接口文件将所述当前窗口的状态数据发送至所述内核,以使得所述内核根据加载的所述至少一个内核文件对所述当前窗口的状态数据进行渲染。
10.如权利要求8或9所述的装置,其特征在于,所述内核创建模块还用于:根据所述主进程直接加载所述至少一个内核文件。
11.如权利要求8或9所述的装置,其特征在于,所述内核创建模块还用于:根据所述主进程创建工作线程,通过所述工作线程加载所述至少一个内核文件。
12.如权利要求8所述的装置,其特征在于,还包括:
用户数据恢复模块,用于根据所述UI模块获取所述应用程序的用户数据,并根据所述UI模块对所述用户数据进行解析以获取所述应用程序在最后关闭时的状态数据,以及根据所述UI模块将所述最后关闭时的状态数据通过所述代理模块和所述接口文件发送至所述内核,以使得所述内核根据加载的所述至少一个内核文件对所述最后关闭时的状态数据进行渲染和恢复。
13.如权利要求8所述的装置,其特征在于,所述执行文件和所述内核文件共享所述接口文件。
14.如权利要求8所述的装置,其特征在于,所述应用程序为浏览器。
15.一种客户端,其特征在于,包括:外壳,处理器和电路板;
所述电路板安置在所述外壳围成的空间内部,所述处理器设置在所述电路板上;
所述处理器用于运行应用程序,所述应用程序对应的文件包括应用程序执行文件、至少一个内核文件和接口文件,其中,所述应用程序执行文件具有用户界面UI模块和代理模块,所述处理器具体用于:
根据用户指令启动所述应用程序执行文件以创建主线程,并加载所述UI模块和代理模块,以生成所述应用程序的展示界面;
通过所述主线程加载所述至少一个内核文件以创建所述应用程序的内核;以及
根据所述内核通过所述代理模块和所述接口文件与所述UI模块进行通信以完成初始化。
16.如权利要求15所述的客户端,其特征在于,所述处理器还具体用于:
根据所述内核通知所述代理模块所述内核文件加载完成;
通过所述代理模块根据所述通知获取所述UI模块在加载时生成的所述展示界面中当前窗口的状态数据;以及
根据所述代理模块通过所述接口文件将所述当前窗口的状态数据发送至所述内核,以使得所述内核根据加载的所述至少一个内核文件对所述当前窗口的状态数据进行渲染。
17.如权利要求15或16所述的客户端,其特征在于,所述处理器还具体用于:根据所述主进程直接加载所述至少一个内核文件。
18.如权利要求15或16所述的客户端,其特征在于,所述处理器还具体用于:根据所述主进程创建工作线程,通过所述工作线程加载所述至少一个内核文件。
19.如权利要求15所述的客户端,其特征在于,所述处理器还具体用于:
根据所述UI模块获取所述应用程序的用户数据;
根据所述UI模块对所述用户数据进行解析以获取所述应用程序在最后关闭时的状态数据;
根据所述UI模块将所述最后关闭时的状态数据通过所述代理模块和所述接口文件发送至所述内核,以使得所述内核根据加载的所述至少一个内核文件对所述最后关闭时的状态数据进行渲染和恢复。
20.如权利要求15所述的客户端,其特征在于,所述执行文件和所述内核文件共享所述接口文件。
21.如权利要求15所述的客户端,其特征在于,所述应用程序为浏览器。
CN201310231830.0A 2013-06-09 2013-06-09 应用程序的启动方法、装置和客户端 Expired - Fee Related CN103345405B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310231830.0A CN103345405B (zh) 2013-06-09 2013-06-09 应用程序的启动方法、装置和客户端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310231830.0A CN103345405B (zh) 2013-06-09 2013-06-09 应用程序的启动方法、装置和客户端

Publications (2)

Publication Number Publication Date
CN103345405A true CN103345405A (zh) 2013-10-09
CN103345405B CN103345405B (zh) 2016-09-28

Family

ID=49280203

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310231830.0A Expired - Fee Related CN103345405B (zh) 2013-06-09 2013-06-09 应用程序的启动方法、装置和客户端

Country Status (1)

Country Link
CN (1) CN103345405B (zh)

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103955388A (zh) * 2014-04-29 2014-07-30 百度在线网络技术(北京)有限公司 客户端的冷启动方法及装置
CN104035802A (zh) * 2014-06-20 2014-09-10 可牛网络技术(北京)有限公司 一种应用界面显示方法、装置及终端
CN104090787A (zh) * 2014-06-25 2014-10-08 可牛网络技术(北京)有限公司 一种应用软件首页的启动方法及启动装置
CN104346194A (zh) * 2014-04-18 2015-02-11 腾讯科技(深圳)有限公司 一种启动文件加载方法、装置及电子设备
CN104714826A (zh) * 2015-03-23 2015-06-17 小米科技有限责任公司 应用主题的加载方法及装置
CN104808913A (zh) * 2014-01-23 2015-07-29 腾讯科技(深圳)有限公司 事件响应方法和装置
CN104899052A (zh) * 2014-03-07 2015-09-09 可牛网络技术(北京)有限公司 一种应用软件首页的启动方法及启动装置
CN104951287A (zh) * 2014-03-26 2015-09-30 可牛网络技术(北京)有限公司 一种生成网页的方法及装置
CN105487886A (zh) * 2015-11-24 2016-04-13 小米科技有限责任公司 加载插件的方法及装置
CN105573768A (zh) * 2014-10-09 2016-05-11 腾讯科技(深圳)有限公司 一种利用应用内核进行数据处理的方法及装置
CN106126287A (zh) * 2016-06-20 2016-11-16 珠海市魅族科技有限公司 应用程序启动方法及系统
CN106598640A (zh) * 2016-11-01 2017-04-26 努比亚技术有限公司 一种启动应用程序的方法和装置
CN104021068B (zh) * 2014-06-13 2017-10-13 珠海市君天电子科技有限公司 终端设备性能检测方法及装置
CN107368560A (zh) * 2017-07-07 2017-11-21 腾讯科技(深圳)有限公司 移动应用的页面实现方法和装置、计算机可读存储介质
CN108121572A (zh) * 2016-11-28 2018-06-05 华为技术有限公司 一种web应用启动方法及装置
CN108415735A (zh) * 2018-02-01 2018-08-17 天津麒麟信息技术有限公司 一种Web浏览器快速启动方法
WO2019011141A1 (zh) * 2017-07-12 2019-01-17 阿里巴巴集团控股有限公司 启动、配置方法,装置,设备,介质和操作系统
CN109543400A (zh) * 2017-09-21 2019-03-29 华为技术有限公司 一种动态管理内核节点的方法和设备
CN109831476A (zh) * 2018-12-15 2019-05-31 中国平安人寿保险股份有限公司 安装包下载方法、装置、电子设备及存储介质
CN109948085A (zh) * 2017-11-23 2019-06-28 广州市动景计算机科技有限公司 浏览器内核初始化方法、装置、计算设备和存储介质
CN110297634A (zh) * 2018-03-23 2019-10-01 山东华软金盾软件股份有限公司 基于webkit内核的应用程序展示方法
CN110493074A (zh) * 2019-07-19 2019-11-22 珠海金山网络游戏科技有限公司 一种服务器与客户端的测试方法及系统
CN111767090A (zh) * 2020-06-28 2020-10-13 百度在线网络技术(北京)有限公司 小程序的启动方法、装置、电子设备以及存储介质
CN112559200A (zh) * 2019-09-25 2021-03-26 杭州海康威视数字技术股份有限公司 用户界面模块的处理方法、门口机及存储介质
CN113176913A (zh) * 2021-05-25 2021-07-27 深圳前海微众银行股份有限公司 Java代理的处理方法、装置、终端设备以及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6393605B1 (en) * 1998-11-18 2002-05-21 Siebel Systems, Inc. Apparatus and system for efficient delivery and deployment of an application
US20090165023A1 (en) * 2007-12-20 2009-06-25 Access Systems Americas, Inc. Browser-based user interface and control architecture with priority attributes
CN102289380A (zh) * 2010-06-21 2011-12-21 上海中标软件有限公司 firefox启动加速方法
CN102591866A (zh) * 2011-01-06 2012-07-18 中国移动通信有限公司 浏览器启动方法、设备及系统
CN102662690A (zh) * 2012-03-14 2012-09-12 腾讯科技(深圳)有限公司 应用程序启动方法和装置
CN102663318A (zh) * 2012-03-22 2012-09-12 百度在线网络技术(北京)有限公司 浏览器及客户端

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6393605B1 (en) * 1998-11-18 2002-05-21 Siebel Systems, Inc. Apparatus and system for efficient delivery and deployment of an application
US20090165023A1 (en) * 2007-12-20 2009-06-25 Access Systems Americas, Inc. Browser-based user interface and control architecture with priority attributes
CN102289380A (zh) * 2010-06-21 2011-12-21 上海中标软件有限公司 firefox启动加速方法
CN102591866A (zh) * 2011-01-06 2012-07-18 中国移动通信有限公司 浏览器启动方法、设备及系统
CN102662690A (zh) * 2012-03-14 2012-09-12 腾讯科技(深圳)有限公司 应用程序启动方法和装置
CN102663318A (zh) * 2012-03-22 2012-09-12 百度在线网络技术(北京)有限公司 浏览器及客户端

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
CIML: "chrome源码学习之启动流程简介", 《HTTP://BLOG.CSDN.NET/CIML/ARTICLE/DETAILS/5730209》 *

Cited By (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104808913B (zh) * 2014-01-23 2019-08-06 腾讯科技(深圳)有限公司 事件响应方法和装置
CN104808913A (zh) * 2014-01-23 2015-07-29 腾讯科技(深圳)有限公司 事件响应方法和装置
CN104899052A (zh) * 2014-03-07 2015-09-09 可牛网络技术(北京)有限公司 一种应用软件首页的启动方法及启动装置
CN104951287B (zh) * 2014-03-26 2018-09-11 可牛网络技术(北京)有限公司 一种生成网页的方法及装置
CN104951287A (zh) * 2014-03-26 2015-09-30 可牛网络技术(北京)有限公司 一种生成网页的方法及装置
CN104346194A (zh) * 2014-04-18 2015-02-11 腾讯科技(深圳)有限公司 一种启动文件加载方法、装置及电子设备
CN104346194B (zh) * 2014-04-18 2017-12-01 腾讯科技(深圳)有限公司 一种启动文件加载方法、装置及电子设备
CN103955388B (zh) * 2014-04-29 2017-09-12 百度在线网络技术(北京)有限公司 客户端的冷启动方法及装置
CN103955388A (zh) * 2014-04-29 2014-07-30 百度在线网络技术(北京)有限公司 客户端的冷启动方法及装置
CN104021068B (zh) * 2014-06-13 2017-10-13 珠海市君天电子科技有限公司 终端设备性能检测方法及装置
CN104035802A (zh) * 2014-06-20 2014-09-10 可牛网络技术(北京)有限公司 一种应用界面显示方法、装置及终端
CN104090787A (zh) * 2014-06-25 2014-10-08 可牛网络技术(北京)有限公司 一种应用软件首页的启动方法及启动装置
CN105573768A (zh) * 2014-10-09 2016-05-11 腾讯科技(深圳)有限公司 一种利用应用内核进行数据处理的方法及装置
WO2016150104A1 (zh) * 2015-03-23 2016-09-29 小米科技有限责任公司 应用主题的加载方法及装置
CN104714826B (zh) * 2015-03-23 2018-10-26 小米科技有限责任公司 应用主题的加载方法及装置
CN104714826A (zh) * 2015-03-23 2015-06-17 小米科技有限责任公司 应用主题的加载方法及装置
CN105487886A (zh) * 2015-11-24 2016-04-13 小米科技有限责任公司 加载插件的方法及装置
CN106126287A (zh) * 2016-06-20 2016-11-16 珠海市魅族科技有限公司 应用程序启动方法及系统
CN106598640A (zh) * 2016-11-01 2017-04-26 努比亚技术有限公司 一种启动应用程序的方法和装置
CN108121572B (zh) * 2016-11-28 2021-02-12 华为技术有限公司 一种web应用启动方法及装置
CN108121572A (zh) * 2016-11-28 2018-06-05 华为技术有限公司 一种web应用启动方法及装置
CN107368560A (zh) * 2017-07-07 2017-11-21 腾讯科技(深圳)有限公司 移动应用的页面实现方法和装置、计算机可读存储介质
CN107368560B (zh) * 2017-07-07 2022-11-04 腾讯科技(深圳)有限公司 移动应用的页面实现方法和装置、计算机可读存储介质
WO2019011141A1 (zh) * 2017-07-12 2019-01-17 阿里巴巴集团控股有限公司 启动、配置方法,装置,设备,介质和操作系统
CN109543400A (zh) * 2017-09-21 2019-03-29 华为技术有限公司 一种动态管理内核节点的方法和设备
US11579899B2 (en) 2017-09-21 2023-02-14 Huawei Technologies Co., Ltd. Method and device for dynamically managing kernel node
CN109543400B (zh) * 2017-09-21 2022-08-09 华为技术有限公司 一种动态管理内核节点的方法和设备
CN109948085A (zh) * 2017-11-23 2019-06-28 广州市动景计算机科技有限公司 浏览器内核初始化方法、装置、计算设备和存储介质
CN108415735A (zh) * 2018-02-01 2018-08-17 天津麒麟信息技术有限公司 一种Web浏览器快速启动方法
CN108415735B (zh) * 2018-02-01 2022-04-05 麒麟软件有限公司 一种Web浏览器快速启动方法
CN110297634A (zh) * 2018-03-23 2019-10-01 山东华软金盾软件股份有限公司 基于webkit内核的应用程序展示方法
CN109831476A (zh) * 2018-12-15 2019-05-31 中国平安人寿保险股份有限公司 安装包下载方法、装置、电子设备及存储介质
CN110493074A (zh) * 2019-07-19 2019-11-22 珠海金山网络游戏科技有限公司 一种服务器与客户端的测试方法及系统
CN112559200A (zh) * 2019-09-25 2021-03-26 杭州海康威视数字技术股份有限公司 用户界面模块的处理方法、门口机及存储介质
CN111767090A (zh) * 2020-06-28 2020-10-13 百度在线网络技术(北京)有限公司 小程序的启动方法、装置、电子设备以及存储介质
CN113176913A (zh) * 2021-05-25 2021-07-27 深圳前海微众银行股份有限公司 Java代理的处理方法、装置、终端设备以及存储介质
CN113176913B (zh) * 2021-05-25 2023-03-24 深圳前海微众银行股份有限公司 Java代理的处理方法、装置、终端设备以及存储介质

Also Published As

Publication number Publication date
CN103345405B (zh) 2016-09-28

Similar Documents

Publication Publication Date Title
CN103345405A (zh) 应用程序的启动方法、装置和客户端
US20240095043A1 (en) Execution of sub-application processes within application program
US11803451B2 (en) Application exception recovery
US10368208B2 (en) Layers in messaging applications
CN109308241B (zh) 监听应用程序启动流程方法、装置、终端设备和存储介质
WO2018040943A1 (zh) 显示数据的控制方法、装置和系统
US10684838B2 (en) Dynamic application deployment
WO2014173141A1 (en) Method of switching desktop subjects of mobile terminal and its switching apparatus
CN107291481B (zh) 一种组件更新方法、装置和系统
CN111767090A (zh) 小程序的启动方法、装置、电子设备以及存储介质
EP2972830A1 (en) Switching to and from native web applications
CN106502717B (zh) 应用程序运行方法及装置
CN110297624B (zh) 基于electron框架的Widget系统的实现方法及采用该系统的电视机
WO2016051241A1 (en) Method of and system for processing content of a web resource in a browser application
EP3242197B1 (en) Desktop sharing method and mobile terminal
CN105630501A (zh) 一种基于QML+OpenGL的车载图形界面系统
EP3680765A1 (en) Navigation bar control method and device
CN115309470B (zh) 微件的加载方法、装置、设备以及存储介质
CN109857537B (zh) 后台服务启动方法、装置、介质及电子设备
CN112506854A (zh) 页面模板文件的存储和页面生成方法、装置、设备及介质
CN113312119B (zh) 信息同步方法及装置、计算机可读存储介质、电子设备
WO2022171058A1 (zh) 应用程序的处理方法、装置及电子设备
CN112578961B (zh) 应用标识显示方法及装置
CN111045758A (zh) 视图处理方法、装置、电子设备及计算机存储介质
CN111766992B (zh) 信息显示方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address

Address after: 100041 Beijing Industrial Street, Shijingshan District, No. 30, building 2, floor A-0071, No. 3

Patentee after: Beijing Cheetah Mobile Technology Co.,Ltd.

Patentee after: Beijing Cheetah Network Technology Co.,Ltd.

Patentee after: BEIJING KINGSOFT INTERNET SECURITY SOFTWARE Co.,Ltd.

Patentee after: ZHUHAI JUNTIAN ELECTRONIC TECHNOLOGY Co.,Ltd.

Patentee after: CONEW NETWORK TECHNOLOGY (BEIJING) Co.,Ltd.

Address before: 100041 Beijing city Shijingshan District Badachu high tech Park West Wells Road No. 3 Building No. 3 1100A

Patentee before: SHELL INTERNET (BEIJING) SECURITY TECHNOLOGY Co.,Ltd.

Patentee before: BEIJING KINGSOFT NETWORK TECHNOLOGY Co.,Ltd.

Patentee before: BEIJING KINGSOFT INTERNET SECURITY SOFTWARE Co.,Ltd.

Patentee before: ZHUHAI JUNTIAN ELECTRONIC TECHNOLOGY Co.,Ltd.

Patentee before: CONEW NETWORK TECHNOLOGY (BEIJING) Co.,Ltd.

CP03 Change of name, title or address
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160928

Termination date: 20180609

CF01 Termination of patent right due to non-payment of annual fee