adb“安装”命令和“pm install”命令之间的区别?
Posted
技术标签:
【中文标题】adb“安装”命令和“pm install”命令之间的区别?【英文标题】:Difference between adb "install" command and "pm install" command? 【发布时间】:2015-04-25 11:52:07 【问题描述】:使用install
命令安装应用程序和使用包管理器的pm install
命令安装应用程序有什么区别?他们做同样的工作吗?一个命令实际上在后面调用另一个命令吗?
adb install -r APK_FILE
adb shell pm install APK_FILE
【问题讨论】:
【参考方案1】:adb install
是从开发主机运行的命令,它会在某个临时位置上传一个包,然后安装它。
pm install
是在设备本地运行的命令。
adb
确实在设备上使用了pm
程序 - 请参阅源代码
https://android.googlesource.com/platform/system/core/+/kitkat-mr2.2-release/adb/commandline.c
【讨论】:
更新链接:android.googlesource.com/platform/system/adb/+/refs/heads/… 指向特定版本的原因是事物的实现方式往往会在版本之间发生变化,并且“head”不是特定版本,因此不是稳定的链接,例如,什么是 .今天的 c 文件可能是下一次的 .cpp 文件,或者其他什么。 那么鉴于 adb 确实在设备上使用了pm
程序,这是否意味着它应该采用所有相同的命令行选项?我看到的行为是不同的。例如,adb shell pm install
(在 Android 10 设备上)拒绝像 --no-incremental
和 --wait
这样的选项,并出现“未知选项 --no-incremental”等错误。而adb install
没有给出这样的错误(但可能会忽略这些选项)。以上是关于adb“安装”命令和“pm install”命令之间的区别?的主要内容,如果未能解决你的问题,请参考以下文章