Android: как узнать, установлено ли какое-либо приложение в устройстве Android с помощью adb?
Я должен установить приложение для Android с именем пакета, например "com.xyz.game", используя adb.
Я хочу автоматизировать процесс с помощью оболочки script. Процесс будет похож, если приложение уже установлено, удалите его (с помощью команды adb uninstall com.xyz.game) и установите с помощью "adb install game.apk" в противном случае просто "adb install game.apk".
Как я могу это достичь?
Ответы
Ответ 1
[ Обновить]
Согласно (также) правильному ответу ниже, попробуйте grep получить результат из пакетов списка PM.
adb shell pm list packages | grep com.your.app.package
[ Оригинал]
Если приложение уже установлено, и если вы попытаетесь снова установить такое же приложение, adb вернется с ошибкой - Failure [INSTALL_FAILED_ALREADY_EXISTS]
. Однако, если вы хотите переустановить уже установленное приложение, используйте параметр -r
.
Пример:
adb install -r game.apk
Ответ 2
Попробуйте выполнить grep результат из пакетов списка PM.
adb shell pm list packages | grep com.xyz.game
Вы можете увидеть результат, если он уже установлен.
package:com.xyz.game
Ответ 3
Не нужно использовать grep. Используя следующие команды, вы можете просто проверить, существует ли приложение или нет.
Запустить команду ADB
adb shell pm list packages [your.package.name]
Если приложение уже установлено, то команда вернется,
пакет: [your.package.name]
Иначе он ничего не вернет, т.е. пустую строку.