Android操作系统的快速启动方法技术方案

技术编号:10862965 阅读:120 留言:0更新日期:2015-01-01 22:14
本发明专利技术提供了一种Android操作系统的快速启动方法,包括:在启动时,应用程序管理服务仅扫描Android操作系统自带的应用的最小子集,该最小子集的应用以保证所述Android操作系统正常开机启动桌面启动器为标准;在所述Android操作系统完成启动后,所述应用程序管理服务扫描所述最小子集的应用之外的其他应用。本发明专利技术能够显著缩短Android操作系统的启动时间,减少开机时间。

【技术实现步骤摘要】
【专利摘要】本专利技术提供了一种,包括:在启动时,应用程序管理服务仅扫描Android操作系统自带的应用的最小子集,该最小子集的应用以保证所述Android操作系统正常开机启动桌面启动器为标准;在所述Android操作系统完成启动后,所述应用程序管理服务扫描所述最小子集的应用之外的其他应用。本专利技术能够显著缩短Android操作系统的启动时间,减少开机时间。【专利说明】
本专利技术涉及一种。
技术介绍
Android操作系统是一种基于Unux操作系统的自由及开放源代码的操作系统, 由Google^公司和开放手机联盟领导及开发,主要用于移动设备,如智能手机和平板电脑。 Android操作系统的系统架构和其操作系统一样,采用了分层的架构。从架构图看,Andr〇id 操作系统分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和 Linux内核层。 ^〇〇3] Android操作系统具有良好的开发性,用户可以从应用商店或者其他途径下载和 安装Android应用,Android应用通常以APK文件提供。当用户安装的应用很多时,会造 成系统开机启动时间很长。 现在Android操作系统的系统启动过程按先后包括:引导程序(b〇〇tl〇ader), linux内核,本地(native)服务,dalvik虚拟机,Android服务以及应用程序。 Android操作系统在启动的过程中,会启动应用程序管理服务 (PackageManagerService),该应用程序管理服务负责扫描系统中特定的目录,找到其中的 应用程序文件,即以APK为后缀的文件,然后对这些文件进行解析,得到应用程序的相关信 息,完成应用程序的安装过程,当安装的APK文件越多时,所需要的时间越多,极大影响了 Android操作系统的启动时间,从而影响安装有 Andr〇丨d操作系统的设备的开机时间。
技术实现思路
本专利技术要解决的技术问题是提供一种Andr〇id操作系统的快速启动方法,能够显 著缩短Android操作系统的启动时间。 为解决上述技术问题,本专利技术提供了一种,包 括: ' 在启动时,应用程序管理服务仅扫描Android操作系统自带的应用的最小子集 该最小子集的应用以保证所述Android操作系统正常开机启动桌面启动器为标准; , 在所述Android操作系统完成启动后,所述应用程序管理服务扫描所述最小 的应用之外的其他应用。 $ 根据本专利技术的一个实施例,在启动时,应用程序管理服务仅扫描Android操作 统自带的应用的最小子集包括: 糸 器集参I该最小子集^数定义所述Andr°id操倾纟紐常开机启动桌 启动所述应用程序管理服务时获取该最小子集参数; 所述应用程序管理服务按照该最小子集参数的指示扫描相应的应用 根据本专利技术的一个实施例,在所述最小子集的应用扫描完成后,发出第一阶斤户 动元成福_代原生Andmid操作系统的启动完成消息。 ,在所述最小子集的应用之外的其他删扫描完成后, 发出所述原生Android操作系统的启动完成消息。 的-个实施例,在所述最小子集的应用扫描完成后,还发出延迟扫描 治息,以?Η不4束所述应用程序管理服务的扫描过程,所麵迟扫描消息包含延迟时间;在 到达所麵迟时间时,臟应用程序管理服务开始扫描所麵小子集的应用之外的其他应 用。 _7]根据本专利技术的-个实施例,所述最小子集麵以代码方式定义或者以肌 式配置。 与现有技术相比,本专利技术具有以下优点: 本专利技术实施例的中,将应用程序管理服务对应 腿扫描雖分涵个隨,在启耐程巾触描系统自删部分删,保证系统正常开 机启动桌面启动器(Launcher);在系统启动完成后,在扫描其他应用,从而显著缩短了启动 时间。 【专利附图】【附图说明】 图1是本专利技术实施例的的流程示意图。 【具体实施方式】 专利技术人对应用程序管理服务(PackageManagerService)的启动过程进行了分析, 其启动时通过静态方法main ()来实现的,也即通过PackageManagerService构造函数来返 回一个IPackageManager的接口实现。应用程序管理服务的构造函数流程如下: 步骤1 :进行~'些成员变量的初始化,比如mContext,mFactoryTest, mMetrics, mSettings等。另外,最重要的是初始化变量mlnstaller,变量mlnstaller建立与守护进 程installd的套接字(socket)连接,守护进程installd主要用于安装(install)、移除 (remove)、优化(dexopt)的底层实现。 步骤2 :建立PackageHandler消息循环,用于处理外部的apk文件安装请求消息, 如adb install, packageinstaller安装apk文件时会发送消息。 以上步骤1和步骤2总耗时大约为15ms左右。 步骤 3,解析 /system/etc/permission 下的 xml 文件(framework/base/data/ etc/),包括platform, xml和系统支持的各种硬件模块的特性(feature)。步骤3耗时25ms 左右。 步骤4 :解析/data/system/packages, xml,这个文件是在解析apk文件时由 writeLPO创建的,里面记录有系统的许可(permissions),以及每个apk的name, codePat h, flags, ts, version, uesrid 等f旨息。步骤 4 耗时大约 130ms 左右。 步骤 5 :检查 BootClassPath,mSharedLibraries 及 /system/framework 下的 jar 是否需要dexopt,需要的则通过dexopt进行优化。步骤5耗时大约30ms左右。 步骤 6 :分别对 /system/framework,/system/app,/data/app,/data/ app-private目录下的apk进行解析,并启动AppDirObserver对上述目录进行监测。步骤 6耗时棚apk的数量多少变化,目前安装5个常见应用,扫描时间在Ss左右,如果安装 i5 个apk文件,时间达到25s左右,应用越多耗时越长。 步骤7 :将解析的每个apk的信息保存到packages.-和喊聯.丄以文件中。 步骤7耗时大约70ms左右。 从以上分析可知,Android操作系统的启动时间主要由步骤6占用。因此,本专利技术 实施例对朗程序髓服务據朗的聰作了舰,餘親程巾仅據·自带的部 分应用,在系统启动完,翻賊他朗,从觀著賴了启动雌_间,加快了启 动速度。 下面结合具体实施例和附图对本专利技术作进一步说明,但不应以此限制本专利技术的保 护范围。 参考图丨,本实施例中的包括如下步骤: 、步骤S11,在启动时,应用程序管理服务仅扫描Andr〇ic^#作系统自带的应用的 最小子集,该最小子集的应用以保证所述Android操作系统正常开机启动桌面启动器为标 准; 步骤S12,在所述Android操作系统完成启动后,所述应用本文档来自技高网
...

【技术保护点】
一种Android操作系统的快速启动方法,其特征在于,包括:在启动时,应用程序管理服务仅扫描Android操作系统自带的应用的最小子集,该最小子集的应用以保证所述Android操作系统正常开机启动桌面启动器为标准;在所述Android操作系统完成启动后,所述应用程序管理服务扫描所述最小子集的应用之外的其他应用。

【技术特征摘要】

【专利技术属性】
技术研发人员:郭方强
申请(专利权)人:上海博泰悦臻电子设备制造有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1