Jimmy's Blog

PackageManagerService
Android

(原创)pm指令源码分析

  平时在开发调试的时候用pm指令用得蛮多的,pm指令可以列出系统支持的feature、permission和当前已安装的apk等信息。所以今天我们来阅读一下pm指令的代码,做下简单分析。 Android.mk   首先我们来查看一下编译pm指令的Android.mk,看看pm指令包含哪些源码文件。Android.mk文件路劲为frameworks/base/cmds/pm [crayon-62bcc856ed8fc171491022/] pm指令源码  &emsp…

2018-11-05 1条评论 3084点热度 1人点赞 jimmychen 阅读全文
Android

(原创)基于Android 8.1之PackageInstaller源码分析(三)

  上一篇我们讲到在PackageInstallerSession的commitLocked方法中,我们最后调用了PackageManagerService的installStage方法。这里我们直接从 PackageManagerService.java installStage [crayon-62bcc856f033c708186886/]   上面的代码中,在最后我们向mHandler发送了INIT_COPY,接下来我们分析mHandler是如何处理INIT_COPY…

2018-10-22 0条评论 2635点热度 0人点赞 jimmychen 阅读全文
Android

(原创)基于Android 8.1之PackageInstaller源码分析(二)

  上一篇讲到如果允许安装未知源程序,并且应用属于未知源程序,就会调用initiateInstall进行安装,而initiateInstall最后会调用startInstallConfirm进行安装确认。这一篇就从startInstallConfirm方法开始讲解。 PackageInstallerActivity.java [crayon-62bcc856f1a46057509766/]   上面安装应用的界面大致如下,升级应用或者应用不需要额外权限的界面大致类似,只是提示…

2018-10-17 0条评论 3220点热度 0人点赞 jimmychen 阅读全文
Android

(原创)基于Android 8.1之PackageInstaller源码分析(一)

前言   前面两篇文章简单讲述了PackageManagerService的启动过程,和APK安装的内容一直都没有涉及到。APK可以通过多种方式安装,例如通过adb install安装、系统开机会默认安装系统应用、将apk放到手机通过PackageInstaller交互安装等等。安装APK的方式很多,但是这里选择用户使用最多的安装方式进行讲解,即通过PackageInstaller交互式安装。PackageInstaller是Android系统的默认程序,源码路劲为packages/app/Pa…

2018-10-14 0条评论 3221点热度 2人点赞 jimmychen 阅读全文
Android

(原创)PackageManagerService启动流程分析(下)

  这里接着上一篇开始写,上一篇只是讲了在startBootstrapServices中启动PackageManagerService部分的代码,剩余的在startOtherServices中PackageManagerService相关设置操作没有分析到,这一篇接着分析下面遗留的问题: mPackageManagerService.updatePackagesIfNeeded mPackageManagerService.performFstrimIfNeeded mPackageManage…

2018-10-11 0条评论 2524点热度 1人点赞 jimmychen 阅读全文
Android

(原创)PackageManagerService启动流程分析(上)

略久没有写自己写博客了,现在要重新抓起来。最近对Android Framework的内容感兴趣,所以接下来可能会阅读下Framework部分的代码,Android系统部分的代码有机会也会分析分析。今天就先来看看PackageManager和PackageManagerService好了。 一. 简述   PackageManagerService(PKMS)和PackageManger(PKM)的关系如下图,PKMS是Android系统中核心服务之一,负责package的相关工作,例如安装,卸载…

2018-10-10 0条评论 3540点热度 1人点赞 jimmychen 阅读全文
分类
  • Android / 45篇
  • ART虚拟机 / 7篇
  • Binder / 9篇
  • C/C++ / 10篇
  • JNI编程指南与规范 / 18篇
  • Linux / 12篇
  • SQL数据库 / 10篇
  • SurfaceFlinger / 10篇
  • 再战C Primer Plus / 14篇
  • 再战C++ Primer Plus / 14篇
  • 网络编程 / 4篇
Adsense

COPYRIGHT © 2022 Jimmy's Blog. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang