What's the difference between installing an app using the install
command and using the package manager's pm install
command? Do they do the exact same job? Does one command actually call the other in the back?
adb install -r APK_FILE
adb shell pm install APK_FILE
Using package manager (pm) Within an adb shell, you can issue commands with the package manager ( pm ) tool to perform actions and queries on application packages installed on the device.
Within an adb shell, you can issue commands with the package manager (pm) tool to perform actions and queries on app packages installed on the device. You can issue a package manager command directly from adb without entering a remote shell.
Android Debug Bridge (adb) is a versatile command-line tool that lets you communicate with a device. The adb command facilitates a variety of device actions, such as installing and debugging apps, and it provides access to a Unix shell that you can use to run a variety of commands on a device.
Next type cd platform-tools : Then type ls (or dir on Windows). You should see adb or adb.exe depending on your operating system. From here you can type ./adb and see some program output.
adb install
is a command to run from a development host, which uploads a package somewhere temporary and then installs it.
pm install
is a command to run locally on the device.
adb
does indeed utilize the pm
program on the device - see the source code at
https://android.googlesource.com/platform/system/core/+/kitkat-mr2.2-release/adb/commandline.c
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With