【Android】【PMS】PackageManager简介

本片文章主要内容如下:

  • 1、PackageManager介绍
  • 2、PackageManager类概述
  • 3、PackageManager与APK安装
  • 4、PackageManager的功能

想要了解Android的安装了流程就不得不提及一个重要的类"PackageManager"我们就先来了解这两个类

一、PackageManager介绍

 

PackageManager源码地址

Android系统为我们提供了很多服务的管理类,比如ActivityManager、PowrManager,那么和安装APK有关就是PackageManager了,它负责管理应用程序包,通过它就可以获取应用程序信息。

二、PackageManager类概述

PackageManager这个类是检测当前已经安装在当前设备上的应用程序包的信息。你可以调用Context类的getPackageManager()方法来获取PackageManager方法。

 

 

三、PackageManager与APK安装

PackageManager是一个实际上管理应用程序安装、卸载和升级的API。当我们安装APK文件时,PackageManager会解析APK包文件和显示确认信息。当我们点击OK按钮后,PackageManager会调用一个叫"InstallPackage"的方法,这个方法有4个参数,也就是uri、installFlags、observer、installPackagename。PackageManager会启动一个叫"package"的servcie服务,现在所有模糊的东西会发生在这个service中。

【Android】【PMS】PackageManager简介

APK安装流程.png

四、PackageManager的功能

  • 1、安装、卸载应用
  • 2、查询permission相关信息
  • 3、查询Application相关信息(application、activity、receiver、service、provider及相应属性等)
  • 4、查询已安装应用
  • 5、增加、删除permission
  • 6、清除用户数据、缓存、代码等