CN112214254A - 加速应用程序启动的方法及装置、以及电子设备 - Google Patents

加速应用程序启动的方法及装置、以及电子设备 Download PDF

Info

Publication number
CN112214254A
CN112214254A CN202011023155.9A CN202011023155A CN112214254A CN 112214254 A CN112214254 A CN 112214254A CN 202011023155 A CN202011023155 A CN 202011023155A CN 112214254 A CN112214254 A CN 112214254A
Authority
CN
China
Prior art keywords
application program
application
restarting
accelerating
accelerated
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
CN202011023155.9A
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.)
Beijing Xiaomi Mobile Software Co Ltd
Original Assignee
Beijing Xiaomi Mobile Software 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 Xiaomi Mobile Software Co Ltd filed Critical Beijing Xiaomi Mobile Software Co Ltd
Priority to CN202011023155.9A priority Critical patent/CN112214254A/zh
Publication of CN112214254A publication Critical patent/CN112214254A/zh
Pending legal-status Critical Current

Links

Images

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/44505Configuring for program initiating, e.g. using registry, configuration files

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

加速应用程序启动的方法及装置、以及电子设备
技术领域
本公开涉及终端系统领域,尤其涉及加速应用程序启动的方法、加速应用程序启动的装置、电子设备、以及非临时性计算机可读存储介质。
背景技术
目前,如手机、平板电脑,或一些如智能电视等终端设备中,衡量系统性能的一项核心指标便是应用程序的启动速度,同时,应用程序的启动速度的快慢也会影响用户的体验。例如,在安卓(Android)系统中,应用程序从未加载的状态进行启动时,需要调取内存,加载应用程序的代码,再调用系统资源,并创建图形、界面等,应用程序的启动完成上述过程需要一定时间,造成应用程序启动迟缓,影响用户体验。
发明内容
为克服相关技术中存在的问题,本公开提供加速应用程序启动的方法、加速应用程序启动的装置、电子设备、以及非临时性计算机可读存储介质。
根据本公开实施例的第一方面,提供一种加速应用程序启动的方法,所述方法包括:响应于关闭应用程序的指令,对所述应用程序进行清理;判断所述应用程序是否需要加速启动;若所述应用程序需要加速启动,则将所述应用程序在后台进行重启。
在一实施例中,在所述将所述应用程序在后台进行重启后,所述方法还包括:加载所述应用程序对应的系统资源,其中,所述系统资源为所述应用程序在启动时需要调取并加载的资源。
在一实施例中,在执行所述将应用程序在后台进行重启之前,所述方法还包括:判断所述应用程序是否满足重启条件;若所述应用程序满足所述重启条件,则执行所述将所述应用程序在后台进行重启的步骤;若所述应用程序不满足所述重启条件,则禁止所述应用程序在后台进行重启。
在一实施例中,所述重启条件包括以下一条或多条:系统不处于低内存状态;所述应用程序具有自动启动权限;所述应用程序未连续发生崩溃。
在一实施例中,所述判断所述应用程序是否需要加速启动,包括:若所述应用程序在加速程序列表,则所述应用程序需要加速启动;若所述应用程序不在所述加速程序列表,则所述应用程序不需要加速启动;其中,所述加速程序列表通过系统预设或通过云端服务器设置。
在一实施例中,在所述对所述应用程序进行清理之前,所述方法还包括:判断所述应用程序是否需要常驻;若所述应用程序需要常驻,则禁止对所述应用程序进行清理;若所述应用程序不需要常驻,则执行对所述应用程序进行清理。
根据本公开实施例的第二方面,提供一种加速应用程序启动的装置,所述装置包括:清理单元,用于响应于关闭应用程序的指令,对所述应用程序进行清理;处理单元,判断所述应用程序是否需要加速启动;重启单元,当所述应用程序需要加速启动时,用于将所述应用程序在后台进行重启。
在一实施例中,所述重启单元还用于:在所述将所述应用程序在后台进行重启后,加载所述应用程序对应的系统资源,其中,所述系统资源为所述应用程序在启动时需要调取并加载的资源。
在一实施例中,所述处理单元还用于:在使所述重启单元执行所述将应用程序在后台进行重启之前,判断所述应用程序是否满足重启条件;当所述应用程序满足所述重启条件时,使所述重启单元执行所述将所述应用程序在后台进行重启的步骤;当所述应用程序不满足所述重启条件时,禁止所述重启单元执行所述将所述应用程序在后台进行重启的步骤。
在一实施例中,所述重启条件包括以下一条或多条:系统不处于低内存状态;所述应用程序具有自动启动权限;所述应用程序未连续发生崩溃。
在一实施例中,所述处理单元通过以下方式判断所述应用程序是否需要加速启动:若所述应用程序在加速程序列表,则所述应用程序需要加速启动;若所述应用程序不在所述加速程序列表,则所述应用程序不需要加速启动;其中,所述加速程序列表通过系统预设或通过云端服务器设置。
在一实施例中,在所述对所述应用程序进行清理之前,所述清理单元还用于:判断所述应用程序是否需要常驻;若所述应用程序需要常驻,则禁止对所述应用程序进行清理;若所述应用程序不需要常驻,则执行对所述应用程序进行清理。
根据本公开实施例的第三方面,提供一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为:执行如前述第一方面所述的加速应用程序启动的方法。
根据本公开实施例的第四方面,提供一种非临时性计算机可读存储介质,当存储介质中的指令由移动处理器执行时实现如前述第一方面所述的加速应用程序启动的方法。
本公开的实施例提供的技术方案可以包括以下有益效果:在应用程序被清理后,判断应用程序是否需要在启动时提高启动速度,如果需要,则对应用程序在后台进行重启,对一些不占用过多内存的内容进行预先加载,使得该应用程序再次被启动时,能够节省启动时间,加快启动过程,提高了用户体验,同时也不占用过多系统内存等资源,避免影响系统的正常使用以及其他功能。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据一示例性实施例示出的一种加速应用程序启动的方法的流程示意图。
图2是根据一示例性实施例示出的另一种加速应用程序启动的方法的流程示意图。
图3是根据一示例性实施例示出的另一种加速应用程序启动的方法的流程示意图。
图4是根据一示例性实施例示出的另一种加速应用程序启动的方法的流程示意图。
图5是根据一示例性实施例示出的一种加速应用程序启动的装置的示意框图。
图6是根据一示例性实施例示出的一种装置的框图。
图7是根据一示例性实施例示出的一种装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在一些相关技术中,通过对一些应用程序的保活处理,即将该些应用程序设置为常驻进程,避免被系统清理。这种方式能够使得,应用程序的优先级得以大幅提升,常规的关闭操作不会使应用程序退出,也就是实际上没有被系统清理。这样,在启动过程中,所需的资源早已加载在内存中,可以有效提升应用程序的启动速度。但是,这种方式下,应用程序所占用的大量内存也不会得到释放。过多常驻进程会导致系统大量的内存资源被占用,新的进程无法获取相应的内存资源。在用户长期使用后,手机出现内存碎片化,应用启动过程会触发内存回收,启动过程会变得十分缓慢。而部分应用程序内存占用较高,做成常驻方案后,系统可用内存减少,同时影响应用的后台驻留能力。
在操作系统中,提升应用程序启动速度可以带来更加流畅的使用体验。由于内存碎片和资源抢占等问题,在手机等电子设备重度使用后,系统应用会出现启动变慢的情况,此问题在各类低配机型尤为明显。在中低端机型上,可用内存本就较少,为了提升一些核心应用程序的启动速度,如果将核心应用程序采用上述常驻方案,系统可用内存进一步减小,会严重影响电子设备的日常使用。
为解决存在的问题,如图1所示,本公开实施例提供一种加速应用程序启动的方法10,图1是根据一示例性实施例示出的一种加速应用程序启动的方法10的流程示意图,加速应用程序启动的方法10可以应用于电子设备的系统中,例如安卓(Android)系统。用于在一些应用程序被清理后,对需要加速启动的应用程序预先重启,加载部分资源,在占用系统内存较少的前提下,提高应用程序的启动速度。加速应用程序启动的方法10可以包括步骤S11、步骤S12及步骤S13。
响应于关闭应用程序的指令,执行步骤S11,对应用程序进行清理。
本公开实施例中,提高应用程序的启动速度的同时,还需要降低对系统内存的占用,从而保证系统的正常运行,以及其他应用程序的正常加载。对于相关技术中的常驻进程方案,在接收到关闭应用程序的指令时,系统并不实际的关闭应用程序,即并不对应用程序进行清理,应用程序占用的内存继续保持,不进行释放,从而保证在接收到启动指令后能够快速的启动。而本公开实施例给出的加速应用程序启动的方法10不对该应用程序做常驻处理,在应用程序关闭后,即对应用程序进行清理,对应用程序占用的大量内存进行释放。从而降低了对系统内存的占用,对系统的其他功能的正常运行提供保障。
步骤S12,判断应用程序是否需要加速启动。
本公开实施例中,在对应用程序进行清理之后,确定该应用程序是否需要进行加速启动的处理。应用程序的进程在被清理时,可以通知系统一侧,由系统一侧进行判断。
判断方式可以有多种,在一实施例中,若应用程序在加速程序列表,则应用程序需要加速启动;若应用程序不在加速程序列表,则应用程序不需要加速启动;其中,加速程序列表通过系统预设或通过云端服务器设置。本实施例中,可以在系统进程管理服务中,在应用程序资源回收的统一位置,添加识别处理,在应用程序被清理时,通过应用程序的包名判断该应用程序是否在加速程序列表中,即该应用程序是否为需要进行加速启动的应用程序。加速程序列表可以用于记录一个或多个需要进行加速启动的应用程序,其可以是系统预先设置的,也可以周期性的或基于指令的从云端服务器进行更新。
需要通过本公开实施例提供的加速应用程序启动的方法10进行加速启动的应用程序,可以是系统的核心应用程序,例如相册、相机、拨号盘、通讯簿等。也可以是一些常用程序,或与应用程序厂商合作确定的应用程序。还可以是一些需要加速,又由于应用程序占用内存过多,不适宜采用常驻进程方式加速的应用程序,例如相机等。
需要通过加速应用程序启动的方法10进行加速启动的应用程序,也可以结合系统的内存总量进行确定,内存总量大,可以对更多应用程序进行加速,内存总量小,则可以选取相对较少的部分应用程序采用加速应用程序启动的方法10。
若应用程序需要加速启动,则执行步骤S13:将应用程序在后台进行重启。
在确定被清理的应用程序需要加速启动后,将应用程序在后台重启(restart)。后台重启应用程序,仅加载部分内容,并不将应用程序的全部启动,相比于常驻进程的方案,大概只占用相当于常驻进程的10%内存。当应用程序接收到启动指令后,由于已经预先加载了部分内容,降低了启动耗时,提高了启动速度,从而提升了用户的体验。在一些实施例中,步骤S13可以包括:加载应用程序的程序代码。在对应用程序进行重启时,仅加载该应用程序的程序代码,即加载一些代码逻辑、以及应用的创建,而不保留、不加载应用程序所需要的界面、图形的信息。从而在收到启动指令后,能够节省加载代码或加载静态库的时间,也可以节省创建应用的时间,同时,加载程序代码本身所用的内存十分有限,相比于常驻进程的方式能够节省大量的内存。
同时,需要说明的是,本公开提供的加速应用程序启动的方法,并不排斥一些应用程序采用常驻进程的方式提高启动速度,针对不同的应用程序可以分别采用不同的处理方式。在一些实施例中,如图2所示,在对应用程序进行清理之前,加速应用程序启动的方法10还可以包括:步骤S14,判断应用程序是否需要常驻;若应用程序需要常驻,则执行步骤S141,禁止对应用程序进行清理;若应用程序不需要常驻,则执行步骤S11,对应用程序进行清理。
本实施例中,可以对于一些优先级最高的应用程序,采用常驻进程的方式加快启动速度,对于次一优先级的应用程序,采用本公开提供的清理后再重启的方式加快启动速度。而对于其他不重要的应用程序,可以完全的释放内存,不进行加快。例如,对如相册、相机、拨号盘、通讯簿等系统核心软件采用常驻进程的方式加快启动速度,对于如一些通信社交类软件的常用应用程序通过清理后再重启的方式加快启动速度,而对于其他不常用软件则不进行任何加速处理,关闭后完全清理,释放内存。由于一些应用程序采用了本公开加速应用程序启动的方法10提供的先清理再重启的方式,既提高了启动速度,同时又释放了大量内存。相比于常驻进程的方案,本公开加速应用程序启动的方法10提供的先清理再重启的方式,内存占用仅为常驻进程的方案占用内存的10%左右,因此,节省了系统大量内存,提高了系统后台驻留能力,也能够保证需要做常驻进程处理的应用程序能够保持常驻状态,避免系统在内存不足时,做资源回收的时间以及清理常驻进程造成的本应快速启动的应用程序启动缓慢。
在一些实施例中,如图3所示,在步骤S13之后,加速应用程序启动的方法10还可以包括:步骤S15,加载应用程序对应的系统资源,其中,系统资源为应用程序在启动时需要调取并加载的资源。本实施例中,在加载了应用程序的代码后,可以进一步的加载和调取一些对应的系统资源。对于步骤S13,是将应用程序的程序代码加载到内存中,而步骤S15则是在应用侧的优化,对应用程序启动过程效率较低但是内存占用不高的部分逻辑进行提前执行,应用程序可以提前调取系统的版本、电子设备的品牌、内存以及一些配置等,这些内容是应用程序在启动时需要调取的部分内容,从而可进一步提升应用程序启动的效率。例如,在需要提速的应用程序代码实现中,在应用程序(Application)的onCreate函数里,把应用程序启动过程中需要预加载的资源进行加载,启动过程相对耗时的binder/IO等操作也可以在此提前执行。通过上述方式,能够在不过多占用内存的情况下,进一步的提高应用程序的启动速度。
在一些实施例中,如图4所示,在执行步骤S13之前,加速应用程序启动的方法10还可以包括:步骤S16,判断应用程序是否满足重启条件;若应用程序满足重启条件,则执行步骤S13,将应用程序在后台进行重启;若应用程序不满足重启条件,则执行步骤S161,禁止应用程序在后台进行重启。本实施例中,在对应用程序重启之前,可以先判断当前是否满足重启条件,在一些情况下,重启应用程序可能会对系统一定影响,或该应用程序不适宜被重启等,在判断不满足重启条件的情况下,则不对应用程序进行重启,保障系统的良好运行。如果满足重启条件,则可以对应用程序进行重启。
在一些实施例中,步骤S16中的重启条件,可以包括以下条件中的任一项,也可以是多项的并列组合:系统不处于低内存状态;应用程序具有自动启动权限;应用程序未连续发生崩溃。
其中,系统不处于低内存状态,是指系统当前可用内存依然较多,当系统处于低内存状态时,说明当前可用内存较少,如此时再进行系统重启,虽然占用内存不多,但在可用内存已经较少的情况下对系统造成更大负担,可能会影响其他应用程序的正常使用,也可能会触发内存回收,使得系统变缓。在一例中,系统的低内存状态可以是可用内存低于一阈值,例如当前可用内存低于1G或2G或其他数值,阈值的设置可以根据总内存进行设置。在另一例中,系统的低内存状态可以是当前可用内存占总内存的比值小于一阈值,例如当前可用内存占总内存的比值小于25%,如总内存为6G,可用内存小于1.5G时即为低内存状态。通过判断系统是否处于低内存状态,可以保证加速应用程序启动的方法10在系统内存不足时不对系统增加更多的负担,保障系统良好运行。
其中,应用程序具有自动启动权限,是指应用程序可以自动进行重启。在一些情况下,用户可以根据需要,关闭对一些应用程序的重启,从而对一些应用程序设置相应的权限,具有自动重启权限的应用程序可以采用本公开的加速应用程序启动的方法10的方式进行重启,而对一些没有自动重启权限的应用程序,则不能执行重启。通过该种方式,能够依据用户的需求进行个性化设置,优先满足用户的需求,提高用户体验。
其中,应用程序未连续发生崩溃,是指应用程序在一定时间内,没有出现过崩溃或没有出现过多次崩溃。在一些情况下,应用程序可能因为自身问题、下载不全、版本过低、与系统不匹配等原因,出现崩溃的情况,导致应用程序被弹出关闭。而为了避免应用被重启占用资源又不能被启动,同时也避免不断的被重启、崩溃、再重启、再崩溃,可以设置防呆机智,通过该条件避免系统投入无用资源。
在一些实施例中,如图4所示,步骤S16可以在步骤S12判断应用程序是否需要加速启动之后,即先判断该应用程序是否需要加速启动,再判断是否满足重启条件。而另一些实施例中,步骤S16也可以在步骤S12之前,即先判断当前是否满足重启条件,再判断该应用程序是否需要加速启动。或者,在又一些实施例中,也可以在步骤S12之前判断部分的重启条件,如果满足重启条件,则执行步骤S12判断应用程序是否需要加速启动,如需要加速启动,再判断是否满足另外一些重启条件,例如,可以先判断系统是否处于低内存状态,付过不处于低内存状态,再判断该应用程序是否需要加速启动,如需要加速启动,再判断该应用程序是否具有自动启动权限、应用程序是否未连续发生崩溃。
基于相同的构思,本公开实施例还提供加速应用程序启动的装置100。
可以理解的是,本公开实施例提供的加速应用程序启动的装置100。为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。结合本公开实施例中所公开的各示例的单元及算法步骤,本公开实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同的方法来实现所描述的功能,但是这种实现不应认为超出本公开实施例的技术方案的范围。
图5是根据一示例性实施例示出的一种加速应用程序启动的装置100框图。参照图5,加速应用程序启动的装置100,可以包括:清理单元110,用于响应于关闭应用程序的指令,对应用程序进行清理;处理单元120,判断应用程序是否需要加速启动;重启单元130,当应用程序需要加速启动时,用于将应用程序在后台进行重启。
在一实施例中,重启单元130用于:加载应用程序的程序代码。
在一实施例中,重启单元130还用于:在加载应用程序的程序代码后,加载应用程序对应的系统资源,其中,系统资源为应用程序在启动时需要调取并加载的资源。
在一实施例中,处理单元120还用于:在使重启单元130执行将应用程序在后台进行重启之前,判断应用程序是否满足重启条件;当应用程序满足重启条件时,使重启单元130执行将应用程序在后台进行重启的步骤;当应用程序不满足重启条件时,禁止重启单元130执行将应用程序在后台进行重启的步骤。
在一实施例中,重启条件包括以下一条或多条:系统不处于低内存状态;应用程序具有自动启动权限;应用程序未连续发生崩溃。
在一实施例中,处理单元120通过以下方式判断应用程序是否需要加速启动:若应用程序在加速程序列表,则应用程序需要加速启动;若应用程序不在加速程序列表,则应用程序不需要加速启动;其中,加速程序列表通过系统预设或通过云端服务器设置。
在一实施例中,在对应用程序进行清理之前,清理单元110还用于:判断应用程序是否需要常驻;若应用程序需要常驻,则禁止对应用程序进行清理;若应用程序不需要常驻,则执行对应用程序进行清理。
关于上述实施例中的加速应用程序启动的装置100,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图6是根据一示例性实施例示出的一种用于加速应用程序启动的装置框图。例如,装置800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图6,装置800可以包括以下一个或多个组件:处理组件802,存储器804,电力组件806,多媒体组件808,音频组件810,输入/输出(I/O)的接口812,传感器组件814,以及通信组件816。
处理组件802通常控制装置800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
存储器804被配置为存储各种类型的数据以支持在装置800的操作。这些数据的示例包括用于在装置800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电力组件806为装置800的各种组件提供电力。电力组件806可以包括电源管理系统,一个或多个电源,及其他与为装置800生成、管理和分配电力相关联的组件。
多媒体组件808包括在所述装置800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当装置800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当装置800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件814包括一个或多个传感器,用于为装置800提供各个方面的状态评估。例如,传感器组件814可以检测到装置800的打开/关闭状态,组件的相对定位,例如所述组件为装置800的显示器和小键盘,传感器组件814还可以检测装置800或装置800一个组件的位置改变,用户与装置800接触的存在或不存在,装置800方位或加速/减速和装置800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件816被配置为便于装置800和其他设备之间有线或无线方式的通信。装置800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由装置800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
图7是根据一示例性实施例示出的一种用于加速应用程序启动的装置1100的框图。例如,装置1100可以被提供为一服务器。参照图7,装置1100包括处理组件1122,其进一步包括一个或多个处理器,以及由存储器1132所代表的存储器资源,用于存储可由处理组件1122的执行的指令,例如应用程序。存储器1132中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1122被配置为执行指令,以执行上述方法锂电池激活充电方法
装置1100还可以包括一个电源组件1126被配置为执行装置1100的电源管理,一个有线或无线网络接口1150被配置为将装置1100连接到网络,和一个输入输出(I/O)接口1158。装置1100可以操作基于存储在存储器1132的操作系统,例如Windows ServerTM,MacOS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
可以理解的是,本公开中“多个”是指两个或两个以上,其它量词与之类似。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
进一步可以理解的是,术语“第一”、“第二”等用于描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开,并不表示特定的顺序或者重要程度。实际上,“第一”、“第二”等表述完全可以互换使用。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。
进一步可以理解的是,术语“中心”、“纵向”、“横向”、“前”、“后”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本实施例和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作。
进一步可以理解的是,除非有特殊说明,“连接”包括两者之间不存在其他构件的直接连接,也包括两者之间存在其他元件的间接连接。
进一步可以理解的是,本公开实施例中尽管在附图中以特定的顺序描述操作,但是不应将其理解为要求按照所示的特定顺序或是串行顺序来执行这些操作,或是要求执行全部所示的操作以得到期望的结果。在特定环境中,多任务和并行处理可能是有利的。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

Claims (14)

1.一种加速应用程序启动的方法,其特征在于,所述方法包括:
响应于关闭应用程序的指令,对所述应用程序进行清理;
判断所述应用程序是否需要加速启动;
若所述应用程序需要加速启动,则将所述应用程序在后台进行重启。
2.根据权利要求1所述的加速应用程序启动的方法,其特征在于,在所述将所述应用程序在后台进行重启后,所述方法还包括:
加载所述应用程序对应的系统资源,其中,所述系统资源为所述应用程序在启动时需要调取并加载的资源。
3.根据权利要求1或2所述的加速应用程序启动的方法,其特征在于,在执行所述将所述应用程序在后台进行重启之前,所述方法还包括:
判断所述应用程序是否满足重启条件;
若所述应用程序满足所述重启条件,则执行所述将所述应用程序在后台进行重启的步骤;
若所述应用程序不满足所述重启条件,则禁止所述应用程序在后台进行重启。
4.根据权利要求3所述的加速应用程序启动的方法,其特征在于,所述重启条件包括以下一条或多条:
系统不处于低内存状态;
所述应用程序具有自动启动权限;
所述应用程序未连续发生崩溃。
5.根据权利要求1所述的加速应用程序启动的方法,其特征在于,所述判断所述应用程序是否需要加速启动,包括:
若所述应用程序在加速程序列表,则所述应用程序需要加速启动;
若所述应用程序不在所述加速程序列表,则所述应用程序不需要加速启动;
其中,所述加速程序列表通过系统预设或通过云端服务器设置。
6.根据权利要求1所述的加速应用程序启动的方法,其特征在于,在所述对所述应用程序进行清理之前,所述方法还包括:判断所述应用程序是否需要常驻;
若所述应用程序需要常驻,则禁止对所述应用程序进行清理;
若所述应用程序不需要常驻,则执行对所述应用程序进行清理。
7.一种加速应用程序启动的装置,其特征在于,所述装置包括:
清理单元,用于响应于关闭应用程序的指令,对所述应用程序进行清理;
处理单元,判断所述应用程序是否需要加速启动;
重启单元,当所述应用程序需要加速启动时,用于将所述应用程序在后台进行重启。
8.根据权利要求7所述的加速应用程序启动的装置,其特征在于,所述重启单元还用于:在所述将所述应用程序在后台进行重启后,加载所述应用程序对应的系统资源,其中,所述系统资源为所述应用程序在启动时需要调取并加载的资源。
9.根据权利要求7或8所述的加速应用程序启动的装置,其特征在于,所述处理单元还用于:在使所述重启单元执行所述将所述应用程序在后台进行重启之前,判断所述应用程序是否满足重启条件;
当所述应用程序满足所述重启条件时,使所述重启单元执行所述将所述应用程序在后台进行重启的步骤;
当所述应用程序不满足所述重启条件时,禁止所述重启单元执行所述将所述应用程序在后台进行重启的步骤。
10.根据权利要求9所述的加速应用程序启动的装置,其特征在于,所述重启条件包括以下一条或多条:
系统不处于低内存状态;
所述应用程序具有自动启动权限;
所述应用程序未连续发生崩溃。
11.根据权利要求7所述的加速应用程序启动的装置,其特征在于,所述处理单元通过以下方式判断所述应用程序是否需要加速启动:
若所述应用程序在加速程序列表,则所述应用程序需要加速启动;
若所述应用程序不在所述加速程序列表,则所述应用程序不需要加速启动;
其中,所述加速程序列表通过系统预设或通过云端服务器设置。
12.根据权利要求7所述的加速应用程序启动的装置,其特征在于,在所述对所述应用程序进行清理之前,所述清理单元还用于:判断所述应用程序是否需要常驻;
若所述应用程序需要常驻,则禁止对所述应用程序进行清理;
若所述应用程序不需要常驻,则执行对所述应用程序进行清理。
13.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为:执行如权利要求1-6任一项所述的加速应用程序启动的方法。
14.一种非临时性计算机可读存储介质,当所述存储介质中的指令由处理器执行时实现如权利要求1-6任一项所述的加速应用程序启动的方法。
CN202011023155.9A 2020-09-25 2020-09-25 加速应用程序启动的方法及装置、以及电子设备 Pending CN112214254A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011023155.9A CN112214254A (zh) 2020-09-25 2020-09-25 加速应用程序启动的方法及装置、以及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011023155.9A CN112214254A (zh) 2020-09-25 2020-09-25 加速应用程序启动的方法及装置、以及电子设备

Publications (1)

Publication Number Publication Date
CN112214254A true CN112214254A (zh) 2021-01-12

Family

ID=74051289

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011023155.9A Pending CN112214254A (zh) 2020-09-25 2020-09-25 加速应用程序启动的方法及装置、以及电子设备

Country Status (1)

Country Link
CN (1) CN112214254A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112817844A (zh) * 2021-01-25 2021-05-18 北京小米移动软件有限公司 后台进程驻留测试方法、装置、设备及存储介质
CN113220354A (zh) * 2021-05-28 2021-08-06 深圳掌酷软件有限公司 锁屏解锁的应用唤醒方法、装置、设备及存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112817844A (zh) * 2021-01-25 2021-05-18 北京小米移动软件有限公司 后台进程驻留测试方法、装置、设备及存储介质
CN113220354A (zh) * 2021-05-28 2021-08-06 深圳掌酷软件有限公司 锁屏解锁的应用唤醒方法、装置、设备及存储介质
CN113220354B (zh) * 2021-05-28 2024-04-26 特讯法务(深圳)有限公司 锁屏解锁的应用唤醒方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CN105955765B (zh) 应用预加载方法及装置
US9588805B2 (en) Method and terminal device for controlling background application
EP3168745B1 (en) Method, device and system for application updating
RU2651207C2 (ru) Способ и аппарат для обработки пакета установки приложения
CN109254849B (zh) 应用程序的运行方法及装置
CN107357613B (zh) 应用更新方法、装置及计算机可读存储介质
CN112214254A (zh) 加速应用程序启动的方法及装置、以及电子设备
KR101712762B1 (ko) 테마 어플리케이션을 로딩하기 위한 방법 및 디바이스
CN109062625B (zh) 应用程序加载的方法、装置及可读存储介质
RU2632396C2 (ru) Способ и устройство для управления подключаемым модулем маршрутизатора
CN107632835B (zh) 应用安装方法及装置
CN106201738B (zh) 系统广播调用方法及装置
CN109901886B (zh) 页面语言切换方法、系统、装置和计算机可读存储介质
US20170220401A1 (en) Method, device, and computer-readable storage medium for calling a process
CN109491655B (zh) 一种输入事件处理方法及装置
CN110968523A (zh) 内存碎片整理的方法和装置
CN111290843A (zh) 进程管理方法及装置
CN112286692A (zh) 内存回收方法、内存回收装置及存储介质
CN114077461A (zh) 应用程序的运行方法、装置、设备及存储介质
CN113238887A (zh) 数据处理方法、装置及存储介质
CN114860242A (zh) 一种编译方法、编译装置及存储介质
CN112083981A (zh) 一种页面视图组件的创建方法和装置
CN114115025B (zh) 基于自动驾驶系统的故障信息的保存方法、装置和设备
CN112068975B (zh) 一种信息处理方法及装置
CN109710274B (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