Як видалити системний додаток за допомогою команди unbstall adb (НЕ видаляйте через rm чи будь-яким іншим способом)


13

Необхідно згадати це, щоб уникнути можливої ​​плутанини, це питання не є повторюваним. Це питання стосується використання adb для видалення пакета . Є кілька подібних питань, але всі вони відрізняються від цього, оскільки вони зосереджені на видаленні програми будь-якими способами.

Будь ласка, не надайте відповіді за допомогою команди "rm" для видалення файлів пакету. Крім того, відповіді, пов’язані з неправильно сформованими іменами пакунків або зворотними поверненнями перевезення. Я думаю, що вони майже всі висвітлені у всіх інших питаннях.

У мене був pm uninstallфункціонал, але після оновлення ROM. Деякі речі більше не буде видалено. Наприклад, наступні два системні програми (які я видалив під попереднім ПЗУ, значно покращуючи загальну продуктивність):
/system/priv-app/SecurityCenter/SecurityCenter.apk=com.miui.securitycenter
/system/app/Updater/Updater.apk= com.android.updater

Тепер я отримую помилку при спробі видалити їх вечір : Помилка [DELETE_FAILED_INTERNAL_ERROR]

Але інші системні програми (які не видаляються через звичайний Android-інтерфейс) видаляють за допомогою pm uninstallкоманди. Приклад:
/system/priv-app/Browser/Browser.apk=com.android.browser

Отже, обидва є системними додатками, яка може бути різниця між ними?

Для довідки я модернізував з MIUI 8.1.6.0 до 8.5.3.0 і знову встановив TWRP та SuperSU. Це питання не стосується мого ПЗУ, оскільки я бачу, що інші люди знаходяться в тій же ситуації. Але, здається, я маю перевагу в тому, що я можу видалити деякі системні програми. І я готовий внести свій внесок, знайти рішення для всіх, видалити будь-яку програму.

Я спробував: mount -o rw, remount / system,
але це не вирішило.

Будь-ласка, допоможіть будь-яким ідеям на цьому шляху. Дякую!


Update 1 - Підтвердження кроків, щоб уникнути переривчастої проблеми
* Вилучив усі розділи в TWRP
* Встановлений останній ПЗУ (MIUI 8.5.3.0)
* Повернувся до TWRP, лише стерти дані / Дані
* Відновлено / Дані з резервної версії ПЗУ, що постачається з пристроєм (MIUI 8.1.6.0)
* Після завантаження в ОС, ROM відображається як найновіший (MIUI 8.5.3.0) у налаштуваннях

Тепер я маю можливість вечора видалити кожну програму, яку я спробував. Навіть найстійкіші: Google APP, Updater, Security.

Це Франкенштейн .. Помилка, я маю на увазі, що гібридний ROM працює добре, і я вже видалив багато системних пакетів, що робить телефон (Redmi 3S +) помітно швидшим. Але я все ж хотів би визначити, що було причиною цього, щоб перетворити його на загальне рішення . Отже, якщо він не зламався, я готовий його зламати, тож наступного разу, коли він порушиться, ми дізнаємося, що це викликає, і як це виправити.

Update 2 -
* Вилучив усі розділи та відновив усі розділи з оригінального ПЗУ.
* Відновлено до заводських налаштувань (за допомогою TWRP)
* та після завантаження в ROM повернувся до TWRP та зробив ще одну резервну копію
* Використовуючи той же сценарій, що і в оновленому 1 вище, за винятком використання тут / Data. pm видалення не працює.

Будь-які думки щодо відмінностей між двома / розділами даних, на яких я повинен бути зосереджений?


1
AFAIK pm uninstallне можна використовувати із системними програмами. Оскільки незрозуміло, чи дійсно ви хочете видалити або просто приховати додаток (ви згадали pm disable), може pm hideбути те, що ви насправді шукаєте?
Izzy

@Izzy Так, це може. Це те, про що я говорю вище, я просто відредагував / зробив це трохи зрозуміліше. Я хочу вечора видалити, але те, що я мав на увазі, перед оновленням я міг робити як видалити, так і відключити в системних додатках, навіть написав приємні сценарії, щоб подбати про все після оновлення.
Еміль

У мене ніколи не було успіху pm uninstallв системних додатках. Але я здогадуюсь: ваш попередній ПЗУ "інженерна" збірка? Я припускаю, що він працює з англомовною збіркою (aka dev build).
iBug

@iBug ні, насправді попередній ПЗУ був тим, з ким був цей телефон. Новий диск також є офіційним оновленням з сайту виробника.
Еміль

1
@Firelord Моя настройка оптимізації MIUI вже вимкнена . device_owner.xml відсутній. device_policies.xml якраз має такі рядки: <? xml version = '1.0' encoding = 'utf-8' standalone = 'yes'?> <policy setup-complete = "true"> <active-password -stuff here- /> </policies>
Еміль

Відповіді:


18

Мені вдалося додати параметри -k та --user до команди pm , наприклад:

pm uninstall -k --user 0 com.android.service

Команда була видана як root, не потрібно перезавантажувати / систему як rw. Android на телефоні - 6.0, а пакет - це системний додаток. Без додаткової опції я отримую помилку:

Failure [DELETE_FAILED_INTERNAL_ERROR]

1
Дякую. Для всіх, хто читає, деякі путівники мають один тире перед користувачем, що спричиняло для мене помилку.
TrojanName

4

Також працює без опції -k (зберігати налаштування користувача):

pm uninstall --user 0 com.android.service

і без відкриття оболонки adb:

adb uninstall --user 0 com.android.service

оновлено з miui 10 до miui 11. але для кількох системних / приватних додатків ці камери виходять з ладу. наприклад для com.miui.calculator
srv_sud
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.