Повністю видаліть додаток на Lollipop


16

У мене виникають проблеми з видаленням програм на Android 5.0 (Nexus 5). Я розробляю додаток для Android, тому налагоджую / запускаю додаток безпосередньо на своєму пристрої. Для виробництва я експортував той самий додаток із магазином брелоків, видалив APK для налагодження, який я запускав раніше, спробував встановити підписаний APK, і я отримав цю помилку:

Існуючий пакет з такою ж назвою із суперечливим підписом вже встановлений.

Це тому, що байт-коди все ще знаходяться під час виконання ART? Хтось має ідею, як це вирішити?

Відповіді:


27

Коли ви видаляєте додаток, використовуючи звичайний підхід до Lollipop (наприклад, перетягування на піктограму "сміття" або з інформації про програму > Видалення ), вона видаляється лише для поточного користувача . Це можна підтвердити за допомогою програми, що показує "Не встановлено" на менеджері додатків. Android виявить, що додаток все ще є, заважаючи користувачу встановлювати додаток з тим же ім'ям пакета.

Це пов’язано з обліковим записом гостя (якщо він активований), що коли програма встановлена, вона автоматично встановлюється на всіх користувачів. Тож вам потрібно видалити додаток і звідти, що може викликати клопіт у щоденному використанні.

Існує кілька підходів до повного видалення програми (впорядковано за практичністю):

  1. (з облікового запису власника) Перейдіть у Налаштування > Програми , знайдіть та відкрийте інформацію про програму. Потім відкрийте меню переповнення (3 вертикальних точки) та виберіть Видалити для всіх користувачів .
  2. (з облікового запису гостя) Деактивуйте гостьовий рахунок, якщо він вам не потрібен (для отримання додаткової інформації: Видалення типового облікового запису гостя користувача з Android Lollipop )
  3. (з ПК) Введіть adb uninstall <package>командний рядок / оболонку. Це те саме, що "видалити для всіх користувачів"
  4. (з гостьових / інших облікових записів) Знайдіть додаток та видаліть його звичайно.
    • Якщо ви не можете його видалити, спробуйте видалити обліковий запис і створити новий, а потім спробуйте знайти та видалити додаток ще раз.

2
Як щодо програм, у яких вимкнено кнопку " Видалити" ? Як системні програми, які дублюються додатками з пакетів пропусків?
Роберт Коритник

@RobertKoritnik вибачте, це не входить до сфери цієї відповіді, оскільки для видалення системних програм потрібен кореневий доступ, наприклад, це питання .
Андрій Т.

0

Мені вдалося видалити таким чином:

  • Я спершу спробував видалити звичайний спосіб (використовуючи параметри-> програми-> ім'я програми-> видалити), який видаляє можливість запустити його, але явно не видаляє.
  • Я запустив Google Play і подивився додаток.
  • Я побачив, що кнопка UnInstall неактивна, але Install була активна, тому я натиснув Install . Тепер я можу запустити додаток.
  • Після цього в Google Play активована кнопка UnInstall .
  • Торкніться UnInstall, щоб видалити додаток.

Вуаля, пропало!


Я думаю, що кнопка видалення не буде видно, якщо додаток не буде оновлено до поточної версії в playstore. Якщо у вас немає оновленої версії програми, яку ви намагаєтесь видалити таким чином, вона покаже вам два варіанти, тобто відкрити або оновити. Спочатку потрібно оновити додаток, а потім видалити його, що є додатковим кроком, який повинен зробити користувач, але це марно, оскільки користувач хоче позбутися програми.
Lucky

@Firelord: 1) Так, я маю на увазі, що все вищезазначене було запущено в додатку Google Play Store на мобільному пристрої. Додаток дозволяє видалити вже встановлені додатки (але не буде видаляти додатки, попередньо завантажені на ваш пристрій, зітхніть).
Скотт Біггс

@Firelord 2) Пояснення: на кроці 3 я використовую додаток Google Play Store, щоб повторно встановити додаток, що дозволить мені запустити його. Повертаюсь до магазину Google Play (і знову шукаю розроблений додаток) для кроків 4 та 5. Сподіваюся, що все з’ясується.
Скотт Біггс
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.