使用 ADB,您可以使用以下三个命令中的任何一个:
adb shell am start -a android.intent.action.UNINSTALL_PACKAGE -d "package:PACKAGE"
adb shell am start -n com.android.packageinstaller/.UninstallerActivity -d "package:PACKAGE"
adb shell am start -a android.intent.action.DELETE -d "package:PACKAGE"
将 PACKAGE 替换为已安装用户应用的包名称。该应用程序必须不是设备管理员才能使命令成功运行。所有这些命令都需要用户确认才能删除应用程序。
可以通过使用adb shell am 检查am 的使用情况来了解所述命令的详细信息。
我使用Elixir 2 获得了有关这些命令的信息(使用任何等效的应用程序)。我用它来显示 Package Installer 应用程序的活动(您在安装和删除应用程序期间看到的 GUI)以及相关的意图。给你。
我使用的另一种方法是:我尝试使用 GUI 卸载应用程序,直到看到最终确认。我没有确认而是执行命令
adb shell dumpsys activity recents # for Android 4.4 and above
adb shell dumpsys activity activities # for Android 4.2.1
除其他外,它还向我展示了后台传递的意图的有用细节。示例:
intent={act=android.intent.action.DELETE dat=package:com.bartat.android.elixir#com.bartat.android.elixir.MainActivity flg=0x10800000 cmp=com.android.packageinstaller/.UninstallerActivity}
在这里,您可以看到动作、数据、标志和组件 - 足以达到目标。