Використовуючи 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"
Замініть ПАКЕТ на назву пакета встановленої програми користувача. Додаток не повинен бути адміністратором пристрою для успішної роботи команди. Усі ці команди потребують підтвердження користувача для видалення програми.
Деталі згаданої команди можна дізнатися, перевіривши використання am за допомогою adb shell am
.
Я отримав інформацію про ці команди за допомогою Elixir 2 (використовуйте будь-який еквівалентний додаток). Я використовував його для показу діяльності програми Package Installer (графічного інтерфейсу, який ви бачите під час встановлення та видалення додатків), а також відповідних намірів. Ось так.
Я використовував альтернативний спосіб: я намагався видалити додаток за допомогою 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}
Тут ви можете побачити дію, дані, прапор та компонент - достатньо для досягнення мети.