首页 / 专利库 / 电脑零配件 / 手持设备 / 一种手持设备的快速开机方法

一种手持设备的快速开机方法

阅读:543发布:2021-06-01

专利汇可以提供一种手持设备的快速开机方法专利检索,专利查询,专利分析的服务。并且一种 手持设备 的快速开机方法,步骤如下:1、手持设备开机时,系统初始化流程与系统服务正常启动;2、包管理服务对APK程序进化优化扫描处理;3、包管理服务正常扫描系统APK程序,并保存APK程序包信息;4、包管理服务根据APK过滤清单列表扫描一部分系统必需的非系统APK程序,并保存相关程序包信息,且APK过滤清单列表在用户安装APK应用时,APK应用被系统服务设置使用时,生成文件及更新信息;5、在系统开机之后,扫描除APK过滤清单外的非系统APK应用程序,并保存相关程序包信息,然后包管理服务通知其它系统服务及桌面,全部APK程序己扫描完成,并再次发送开机广播,等待其它系统服务处理。本 发明 节省了开机时间,提高开机速度,使得开机时间不受安装的APK应用影响。,下面是一种手持设备的快速开机方法专利的具体信息内容。

1.一种手持设备的快速开机方法,基于Android系统,其特征在于:所述的开机时包管理服务对APK程序进行扫描,APK程序包括了系统APK程序与非系统APK应用程序, 非系统APK应用程序分为系统开机必需APK程序与非系统开机必需APK程序,步骤如下步骤1、手持设备开机时,系统初始化流程与系统服务正常启动;
步骤2、包管理服务对APK程序进化优化扫描处理;
步骤3、包管理服务正常扫描系统APK程序,并保存APK程序包信息;
步骤4、包管理服务根据APK过滤清单列表扫描一部分系统必需的非系统APK程序,并保存相关程序包信息,且APK过滤清单列表在用户安装APK应用时,APK应用被系统服务设置使用时,生成文件及更新信息;
步骤5、在系统开机之后,扫描除APK过滤清单外的非系统APK应用程序,并保存相关程序包信息,然后包管理服务通知其它系统服务及桌面,全部APK程序己扫描完成,并再次发送开机广播,等待其它系统服务处理。
2.根据权利要求1所述的手持设备的快速开机方法,其特征在于:所述的非系统APK程序分类为系统开机必需应用程序和非必需应用程序,且系统开机必需应用程序于该程序被安装时保存于APK过滤清单。
3.根据权利要求2所述的手持设备的快速开机方法,其特征在于:所述的APK过滤清单由APK程序安装时,包管理服务判断是否需要设置为开机启动必需程序,如是则加入清单,且用户根据使用情况调整该过滤清单。
4.根据权利要求3所述的手持设备的快速开机方法,其特征在于:步骤2所述的APK程序为系统开机必需应用程序,手持设备开机时,系统包管理服务对系统开机必需应用程序进行正常扫描并加载信息,对非必需应用程序延迟扫描及加载信息。
5.根据权利要求4所述的手持设备的快速开机方法,其特征在于:所述的非系统开机必需的APK应用程序的延迟扫描及加载信息包括:
系统开机后,再次补发开机广播,需要根据开机广播启动的APK程序可以在开机广播后自动启动程序。
6. 根据权利要求5所述的手持设备的快速开机方法,其特征在于:步骤5所述的其他系统服务包括但不仅包括插件服务,壁纸服务,输入法服务。
7.根据权利要求6所述的手持设备的快速开机方法,其特征在于:步骤3所述的APK程序包的信息包括APK程序名称及分类。
8.根据权利要求1-7中任一项所述的手持设备的快速开机方法,其特征在于:所述的手持设备为手机、MP3、MP4或电子阅读器。

说明书全文

一种手持设备的快速开机方法

技术领域

[0001] 本发明涉及一种手持设备开机方法,特别是涉及一种基于Android系统的手持设备的快速开机方法。

背景技术

[0002] 基于Android系统的移动设备,在系统开机启动时,因为需要在显示解画面之前加载许多服务及进行各种系统处理,开机速度相当缓慢。而且当移动设备内置存储安装的APK应用越多时,开机时间会随着APK应用数目成正比增长。目前,大多数厂家无法解决此问题,有少数厂家的解决办法是使用假关机技术,在设备关机时,不真正关闭电源,而是进行系统休眠,以达到开机时快速启动的目的,但此方法无法解决设备掉电后,重新上电时,系统开机的启动速度问题。

发明内容

[0003] 本发明的目的在于克服现有技术的不足,提供一种手持设备的快速开机方法,节省了开机时间,提高开机速度,使得开机时间不受安装的APK应用影响。
[0004] 为了达到上述目的,本发明采用的技术方案是,一种手持设备的快速开机方法,基于Android系统,所述的开机时包管理服务对APK程序进行扫描,APK程序包括了系统APK程序与非系统APK应用程序, 非系统APK应用程序分为系统开机必需APK程序与非系统开机必需APK程序,其步骤如下:步骤1、手持设备开机时,系统初始化流程与系统服务正常启动;
步骤2、包管理服务对APK程序进化优化扫描处理;
步骤3、包管理服务正常扫描系统APK程序,并保存APK程序包信息;
步骤4、包管理服务根据APK过滤清单列表扫描一部分系统必需的非系统APK程序,并保存相关程序包信息,且APK过滤清单列表在用户安装APK应用时,APK应用被系统服务设置使用时,生成文件及更新信息;
步骤5、在系统开机之后,扫描除APK过滤清单外的非系统APK应用程序,并保存相关程序包信息,然后包管理服务通知其它系统服务及桌面,全部APK程序己扫描完成,并再次发送开机广播,等待其它系统服务处理。
[0005] 进一步的,所述的非系统APK程序分类为系统开机必需应用程序和非必需应用程序,且系统开机必需应用程序于该程序被安装时保存于APK过滤清单。 进一步的,所述的APK过滤清单由APK程序安装时,包管理服务判断是否需要设置为开机启动必需程序,如是则加入清单,且用户根据使用情况调整该过滤清单。
[0006] 进一步的,步骤2所述的APK程序为系统开机必需应用程序,手持设备开机时,系统包管理服务对系统开机必需应用程序进行正常扫描并加载信息,对非必需应用程序延迟扫描及加载信息。
[0007] 进一步的,所述的非系统开机必需的APK应用程序的延迟扫描及加载信息包括:系统开机后,再次补发开机广播,需要根据开机广播启动的APK程序可以在开机广播后自动启动程序。
[0008] 进一步的,步骤5所述的其他系统服务包括但不仅包括插件服务,壁纸服务,输入法服务等。
[0009] 进一步的,步骤3所述的APK程序包的信息包括APK程序名称及分类。
[0010] 进一步的,所述的手持设备为手机、MP3、MP4或电子阅读器。
[0011] 与现有技术相比,本发明的有益效果是:通过将APK应用程序包进行分类为系统开机必需应用程序和非必需应用程序,手持设备开机时,系统包管理服务对系统开机必需应用程序进行预加载,对非必需应用程序延迟加载或禁止加载,APK程序的非必需应用程序的延迟加载设置开机广播,在开机广播后自动启动程序,优化了开机时间,每个APK可节省1-5秒的时间,用户安装的APK越多,节省的开机时间越多;最理想的状态为达到跟/data/app下无APK时的出厂状态。
附图说明
[0012] 图1为本发明的具体实施例开机启动方法流程图;图2为现有技术的开机启动方法流程图;
图3为现有技术的系统包管理服务开机启动流程图;
图4为本发明的APK程序开机启动流程图。

具体实施方式

[0013] 下面结合实施例参照附图进行详细说明,以便对本发明的技术特征及优点进行更深入的诠释。
[0014] 一种手持设备的快速开机方法,基于Android系统,所述的开机时包管理服务对APK程序进行扫描,APK程序包括了系统APK程序与非系统APK应用程序, 非系统APK应用程序分为系统开机必需APK程序与非系统开机必需APK程序,其步骤如下:步骤1、手持设备开机时,系统初始化流程与系统服务正常启动;
步骤2、包管理服务对APK程序进化优化扫描处理,包管理服务后的开机流程正常执行;
步骤3、包管理服务正常扫描系统APK程序,并保存APK程序包信息;
步骤4、包管理服务根据APK过滤清单列表扫描一部分系统必需的非系统APK程序,并保存相关程序包信息,且APK过滤清单列表在用户安装APK应用时,APK应用被系统服务设置使用时,生成文件及更新信息;
步骤5、在系统开机之后,扫描除APK过滤清单外的非系统APK应用程序,并保存相关程序包信息,然后包管理服务通知其它系统服务及桌面,全部APK程序己扫描完成,并再次发送开机广播,等待其它系统服务处理。
[0015] 进一步的,所述的非系统APK程序分类为系统开机必需应用程序和非必需应用程序,且系统开机必需应用程序于该程序被安装时保存于APK过滤清单。例如程序桌面插件被设置时,程序的壁纸被设置时,程序的输入法被设置时,保存于APK过滤清单。 [0016]进一步的,所述的APK过滤清单由APK程序安装时,包管理服务判断是否需要设置为开机启动必需程序,如是则加入清单,且用户根据使用情况调整该过滤清单。例如插件服务,壁纸服务及输入法服务也可根据插件,壁纸及输入法设置情况调整该清单。
[0017] 进一步的,步骤2所述的APK程序为系统开机必需应用程序,手持设备开机时,系统包管理服务对系统开机必需应用程序进行正常扫描并加载信息,对非必需应用程序延迟扫描及加载信息。
[0018] 进一步的,所述的非系统开机必需的APK应用程序的延迟扫描及加载信息包括:系统开机后,再次补发开机广播,需要根据开机广播启动的APK程序可以在开机广播后自动启动程序。
[0019] 进一步的,步骤5所述的其他系统服务包括但不仅包括插件服务,壁纸服务,输入法服务等。
[0020] 进一步的,步骤3所述的APK程序包的信息包括APK程序名称及分类。
[0021] 进一步的,所述的手持设备为手机、MP3、MP4或电子阅读器。
[0022] 现有技术的开机启动方法流程图如图2所示,开机程序步骤如下:步骤S101、系统引导加载程序bootloader
1)源码:bootable/bootloader/*
2)说明:加电后,CPU将先执行bootloader程序
开机按Power,正常启动系统,加载boot.img,boot.img包含内核,基本文件系统,用于正常启动手机(以下只分析正常启动的情况)。
[0023] 步骤S102、内核kernel1)源码:kernel/*;
2)说明:kernel由bootloader加载。
[0024] 步骤S103、文件系统及应用init1)源码:system/core/init/*;
2)配置文件:system/rootdir/init.rc;
3)说明:init是一个由内核启动的用户级进程,它按照init.rc中的设置执行:启动服务(这里的服务指linux底层服务,如adbd提供adb支持,vold提供SD卡挂载等),执行命令和按其中的配置语句执行相应功能。
[0025] 步骤S104、重要的后台程序进程孵化器zygote1)源码:frameworks/base/cmds/app_main.cpp等;
2)说明:zygote是一个在init.rc中被指定启动的服务,该服务对应的命令是/system/bin/app_process;
a)建立Java Runtime,建立虚拟机
b)建立Socket接收ActivityManangerService的请求,用于Fork应用程序;
c)启动System Server。
[0026] 步骤S105、系统服务system server1)源码:
frameworks/base/services/java/com/android/server/SystemServer.java;
2)说明:被zygote启动,通过System Manager管理android的服务(这里的服务指frameworks/base/services下的服务,如卫星定位服务,剪切板服务等)。
[0027] 步骤S106、桌面launcher1)源码:
ActivityManagerService.java为入口,packages/apps/launcher*实现;
2)说明:系统启动成功后SystemServer使用xxx.systemReady()通知各个服务,系统已经就绪,桌面程序Home就是在ActivityManagerService.systemReady()通知的过程中建立的,最终调用 ()启launcher。
[0028] 步骤S107、解锁1) 源 码: frameworks/policies/base/phone/com/android/internal/policy/impl/*lock*;
2) 说 明:系 统 启 动 成 功 后 SystemServer 调 用 wm.systemReady() 通知 WindowManagerService, 进 而 调 用 PhoneWindowManager, 最 终 通 过LockPatternKeyguardView显示解锁界面,跟踪代码可以看到解锁界面并不是一个Activity,这是只是向特定层上绘图,其代码了存放在特殊的位置
[0029] 步骤S108、开机自启动的第三方应用程序1) 源 码: frameworks/base/services/java/com/android/server/am/ActivityManagerService.java;
2)说明:系统启动成功后SystemServer调用ActivityManagerNative.getDefault().systemReady() 通 知ActivityManager 启 动 成 功,ActivityManager 会 通 过 置 变量mBooting,通知它的另一线程,该线程会发送广播android.intent.action.BOOT_COMPLETED以告知已注册的第三方程序在开机时自动启动。
[0030] 现有技术的系统包管理服务开机启动流程图如图3所示,步骤105的系统服务包括AMS(英文application management system的缩写,应用管理服务)、WMS(英文windows management system的缩写,窗口管理服务)、PMS(英文Package management system的缩写,包管理服务)等服务。其中,PMS服务处理可细分为下面1051-1052两个步骤:步骤1051、/system/app(/系统/程序)目录应用扫描;
步骤1052、/data/app(/数据/程序)目录应用进行扫描;
扫描了1051-1052后通知桌面、插件、壁纸等服务处理,且其中的步骤1052操作是系统开机启动最为耗时的操作,而且此操作会随着APK应用数量的增长而使得系统开机时间成正比增长。
[0031] 本发明的开机启动方法流程图如图1所示,与图2相比,图1在步骤1502上进行了改进。
[0032] 因为在android系统启动时,1502这一个步骤,在系统的/system/app , /data/app下面存放系统的APK应用和手机内置及安装的APK应用,系统包管理服务在这里不是去启动这些应用,而是扫描APK包的信息,加载到包管理服务的内存中,供之后系统的查询,调用使用。
[0033] /data/app这个目录下的应用很多不是系统必需的,有大部分实际在系统刚起来时不会用到,所以把这一部分的扫描放到了系统开机之后去处理,在系统开机之后,再扫描延迟扫描的APK信息,然后通知各个服务及桌面等处理。用户之后的操作就可以通过包管理服务使用到这些APK,而这些APK程序有一些会收到开机广播,自己把自己启动起来,大部分还是不会启动。而这种流程是基于android系统本身的,跟别的系统是有区别的,着重点是延迟加载,节省开机时间,而不是限制开机启动。
[0034] 改进后的步骤1052如图1所示:对PMS进行优化处理,在PMS中只加载部分必需的APK程序,其他APK程序延迟加载;并设置延迟加载/data/app目录下的应用清单,根据清单延迟加载,在APK延迟加载完成后,一方面系统发送开机广告,APK自启动,另一方面系统通知插件、壁纸等服务处理,最后通知说明,重绘桌面。
[0035] APK程序开机启动流程图如图4所示,系统开机时,判断APK程序是否需要特殊处理,一些桌面、锁屏、壁纸及输入法等特殊应用需要预加载则与系统程序一起启动,其他则列入APK过滤清单,延迟加载。
[0036] 本发明优化时间,每个APK可节省1-5秒左右的时间,应用本发明前后,用户安装的APK越多,本发明可节省的开机时间就越多。最理想的状态是达到跟/data/app下无APK时的出厂状态。例如,安装100个APK,本来开机时间是30秒,安装后开机时间大概会超过2-3分钟,根据CPU速度决定,应用发明后,基本还是30-40秒,最理想状态还是30秒。
[0037] 以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属领域技术人员来说,在不脱离本发明构思的前提下,做出简单的更改或优化,都应当视为本发明的保护范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈