Не удалось удалить adb
Я пишу некоторые примеры приложений.
После того как я отлаживаю эти приложения, я не вижу кнопку удаления в моем приложении управления приложениями.
Когда я удаляю adb, он всегда говорит Failure without any reason.
В DDMS я увидел, что мой apk хранится в /data/app/com.k2g.leaveDemo-1.apk
.
Я не уверен, что мне не хватает.
Мне всегда нужно reset мое устройство, чтобы избавиться от этих приложений: (
Нужно ли мне что-то делать?
Нужно ли что-то делать в режиме отладки?
Или это зависит от версии?
Я использую Samsung S2.
Ответы
Ответ 1
Да, управление мобильными устройствами приведет к возникновению собственных проблем, но я уверен, что "Failure" - проблема dos2unix. На моих машинах Linux adb добавляет новую строку DOS, которая вызывает "Failure", потому что удаление считает, что символ CR является частью имени пакета. Также удалите '-1.apk' с конца имени файла package-1.apk.
adb root
adb shell
pm list packages
pm uninstall com.android.chrome
В моем случае у меня есть телефон, который находится в постоянном безопасном режиме, поэтому есть только приложения под /system/app/. Поэтому я устанавливаю их, чтобы файлы .apk копировались, затем удалялись массово и копировали в /system/app/, вычищали/кеш и перезагружались. Теперь у меня больше приложений, хотя в безопасном mdoe.
# adb root
# pm list packages -3 > /root/bulkuninstall.txt
# vi /root/bulkuninstall.txt and check ^M characters at end of each line.
If ^M, then must run dos2unix /root/bulkuninstall.txt.
Remove '-1.apk' using vi search and replace:
:%s/-1\.apk//g
Or sed...
# cp /data/app/* /storage/sdcard1/APKs/
# for f in `cat /root/bulkuninstall.txt`; do echo $f; pm uninstall $f; done;
#
# echo Now remount system and copy the APK files to /system/app/
# mount | grep system
# mount -o remount,rw /dev/block/(use block device from previous step) /system
# cp /storage/sdcard1/APKs/* /system/app/
# reboot
стереть кеш включите питание.
Ответ 2
Это не точный ответ, но если вы хотите удалить приложение, потому что у вас есть обновленный .apk для установки, вы можете попробовать следующее:
adb install -r yourapp.apk
Опция -r
сообщает adb переустановить приложение
Ответ 3
Я предполагаю, что вы включили developer mode
на своем устройстве Android, и вы подключены к своему устройству, и у вас есть доступ к оболочке (adb shell
).
Как только это будет сделано, вы можете удалить приложение с помощью этой команды pm uninstall --user 0 <package.name>
. 0 - это корневой идентификатор - таким образом вам не нужно слишком корни свое устройство.
Вот пример, который я сделал на своем устройстве huawei p110 lite.
# gain shell access
$ adb shell
# check who you are
$ whoami
shell
# obtain user id
$ id
uid=2000(shell) gid=2000(shell)
# list packages
$ pm list packages | grep google
package:com.google.android.youtube
package:com.google.android.ext.services
package:com.google.android.googlequicksearchbox
package:com.google.android.onetimeinitializer
package:com.google.android.ext.shared
package:com.google.android.apps.docs.editors.sheets
package:com.google.android.configupdater
package:com.google.android.marvin.talkback
package:com.google.android.apps.tachyon
package:com.google.android.instantapps.supervisor
package:com.google.android.setupwizard
package:com.google.android.music
package:com.google.android.apps.docs
package:com.google.android.apps.maps
package:com.google.android.webview
package:com.google.android.syncadapters.contacts
package:com.google.android.packageinstaller
package:com.google.android.gm
package:com.google.android.gms
package:com.google.android.gsf
package:com.google.android.tts
package:com.google.android.partnersetup
package:com.google.android.videos
package:com.google.android.feedback
package:com.google.android.printservice.recommendation
package:com.google.android.apps.photos
package:com.google.android.syncadapters.calendar
package:com.google.android.gsf.login
package:com.google.android.backuptransport
package:com.google.android.inputmethod.latin
# uninstall gmail app
pm uninstall --user 0 com.google.android.gms
Ответ 4
Если это внутреннее приложение Android, вам может потребоваться:
- оболочка adb
- mount -o rw, remount -t yaffs2/dev/block/mtdblock3/system
- rm/system/app/your_app
- rm/data/data/your_app
- удалить любые записи в /data/system/packages.xml
- удалить любые записи в /data/system/packages.list
- изменить AndroidManifest.xml и избавиться от android: sharedUserId = "android.uid.shared"
Это на свой страх и риск; - |, сначала попробуйте эмулятор...
Ответ 5
Похоже, у вас есть приложение, содержащее скрытый администратор устройств, такой как этот: http://www.symantec.com/security_response/writeup.jsp?docid=2013-060411-4146-99
вы можете удалить это приложение только при первом отключении администратора устройства. Вы можете использовать https://play.google.com/store/apps/details?id=com.trendmicro.mtrt.hiddenDAcleaner, чтобы отключить его или сделать это самостоятельно, отправив намерение приложению, которое вызывает приемник, который отключит устройство админ.
Ответ 6
Я нахожу, что adb shell pm uninstall <package>
работает последовательно, где adb uninstall <package>
нет.
Ответ 7
Попробуйте отключить "Instant run" из окна настроек
Ответ 8
okey Я был в такой же ситуации, я все это пробовал без результата.. и последний ответ был близок.. Я получил это, делая следующее:
чтобы получить правильное имя вашего пакета, выполните следующие действия:
adb shell pm list packages | grep "name of your app here"
вы должны увидеть правильное имя своего приложения.. так что теперь это только работает:
adb uninstall com.your-real-app-name
наконец снова запустится команда:
ionic run android
Ответ 9
Откройте приложение "Заявить" и сначала проверьте пакет приложений.
После этого убедитесь, что ваше устройство установлено в режим отладчика.
Проверьте, может ли АБР взаимодействовать с вашим устройством:
adb
Если ваше устройство указано, запустите:
adb удалить PACKAGE_WRITTEN_IN_MANIFEST
Ответ 10
Вам придется вручную удалять приложения. подключитесь к настройке → Управление приложениями → Запуск приложения, нажмите на него, и вы можете удалить, остановить приложения оттуда.
Ответ 11
Возможно, вы пытаетесь удалить приложение, являющееся администратором телефона.
Чтобы удалить его, откройте "Seetings" > "Безопасность" > "Администраторы телефона".
Если приложение указано, снимите флажок и подтвердите операцию.
После этого вы сможете удалить его с помощью области настроек приложения или adb.
Ответ 12
У вас есть имя apk, а не имя пакета:
Сначала вы должны знать имя пакета. Для этой ленты:
рекламные пакеты adb shel pm
Как только у вас есть имя пакета (будьте осторожны, имя пакета похоже на com.intel.... а не пакет: com.intel...), лента:
adb shell pm uninstall -k "имя_пакета"
и Bingo!
Ответ 13
Это может быть что-то простое, как ввести имя пакета в неправильный регистр...
У меня была та же проблема - оказалось, что я вводил имя пакета во всех нижних регистрах, когда фактическое имя пакета включало символы верхнего регистра.
adb uninstall -k <packageName - eg. com.test.app>
(Если вы явно деинсталлируете, вы, вероятно, не хотите, чтобы -k хранит файлы приложений и кеш файлы.)
Ответ 14
Если у вас есть проблемы с удалением через adb, я могу порекомендовать следующий инструмент:
https://github.com/patrickfav/uber-adb-tools
вы можете использовать подстановочные знаки и поддерживает несколько устройств, а также имеет некоторую лучшую обработку ошибок, чем ванильный ADB (но использует его в фоновом режиме, конечно). Будет работать на вашей платформе.
![консольная витрина]()
Полная оговорка: я разработчик
Ответ 15
Это сработало для меня:
Это каталог, в котором хранятся все APK:
cd /system/app
Перечислите их:
ls
Выберите один для удаления.
pm install -r <app_to_remove>.apk
Пример:
$ pm install -r Google-Play-services.apk
pkg: Google-Play-services.apk
Success
Я заметил, что я получаю сбой, если приложение, которое я пытаюсь удалить, запускается, поэтому сначала уничтожьте его.
Кроме того, я заметил, что вам придется запускать (на корневом устройстве):
$ su
# mount -o remount +rw /
Ответ 16
Если вы используете устройство Xiomi, вам необходимо войти в систему под учетной записью MI.
После успешной регистрации вы можете установить и удалить через ADB.
Ответ 17
Убедитесь, что вы ввели полное имя пакета с именем приложения:
com.domain.app
Ответ 18
У меня был сбой при использовании удаления adb оболочки com.package.app/
удален/(поэтому adb shell uninstall com.package.app), и он работает
Ответ 19
У меня был экземпляр запуска эмулятора и подключенное устройство.
Когда я запускал команду `adb -d uninstall PACKAGE_NAME ', я получил сообщение об ошибке "DELETE_FAILED_INTERNAL_ERROR", но когда я убил экземпляр Emulator, я получил "успех" в процессе установки.
Ответ 20
В моем случае я часто получаю эту проблему, когда я впервые утверждаю приложение в режиме отладки и позже пытаюсь установить приложение, подписанное google.
Это связано с тем, что оба приложения имеют одинаковое имя пакета, но разные подписи.
Поскольку я обновился до Android lollypop, я иногда даже получаю эту ошибку, если я удалю приложение с помощью настроек \Apps.
Если у вас есть эта проблема, проверьте, установлено ли приложение в другом профиле пользователя и удалите его во всех учетных записях пользователей.
Ответ 21
У меня была та же проблема. После ввода удаления объявления я получил "отказ [DELETE_FAILED_INTERNAL_ERROR]".
Проведя некоторое время, чтобы понять, что случилось, я вдруг понял, что у меня есть опечатка в имени моей упаковки...
Ну, это может быть не тот ответ, который вам нужен. На всякий случай у вас есть такая же проблема со мной.
Ответ 22
Вы можете выполнить следующие шаги, чтобы удалить приложение из устройства с помощью командной строки.
- выполните команду: adb -s [devicename] удалить -k [packagename].
эта команда сохранит данные и кеш в устройстве, но удалит приложение с устройства.
- Для удаления данных и кеширования с устройства вместе с приложением выполните приведенную ниже команду.
adb shell pm uninstall -k [packagename].
если он показывает, что ваше приложение успешно удалено '
Ответ 23
Попробуйте отключить "Мгновенный запуск" в настройках!
Это работает для меня.
![enter image description here]()
Ответ 24
Мой был на Samsung J7 Pro, проблема была проста.
j7y17lte:/system $ pm list packages|grep airtel
package:com.samsung.android.airtel.stubapp
j7y17lte:/system $ pm uninstall -k --user 0 com.samsung.android.airtel.stubapp
НЕ включайте слово package
в команду unistall
Ответ 25
Просто запустите ADB и используйте следующую команду:
adb shell pm uninstall -k --user 0 <package name>
И вы должны получить это возвращение:
successful