| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 移动开发 -> Android源码分析-pm命令的实现,列出包名pm list package,列出系统库pm list libraries -> 正文阅读 |
|
[移动开发]Android源码分析-pm命令的实现,列出包名pm list package,列出系统库pm list libraries |
pm,即package manager, 还记得Android Framework层的PackageManager吗?利用PackageManager,可以访问到PackageManagerService。 本篇分析pm命令的源码,与“Android源码分析-am命令的实现”形成姊妹篇。 pm命令的使用:一个简单的pm命令: 列出已经安装的第三方packagename(包名) $ pm list package -3 pm命令的用法: 再看一个例子:?列出系统库
pm源码分析:源码位置:
Pm类(Pm.java)就是pm命令的代码实现,我们主要来分析这个java文件。 Pm类的主要数据成员和部分方法: 数据成员: ?1. run方法: 初始化mPm以及进行命令行解析。
2.?runListLibraries方法: 获取系统库(即jar包,而非so)
3.runListPackages:列出包名 以pm list package -3为例:
?可见,主要功能都是通过mPm来实现的,而mPm真正的实例是ApplicationPackageManager: final class ApplicationPackageManager extends PackageManager { ? |
|
移动开发 最新文章 |
Vue3装载axios和element-ui |
android adb cmd |
【xcode】Xcode常用快捷键与技巧 |
Android开发中的线程池使用 |
Java 和 Android 的 Base64 |
Android 测试文字编码格式 |
微信小程序支付 |
安卓权限记录 |
知乎之自动养号 |
【Android Jetpack】DataStore |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 23:58:00- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |