Я пытаюсь развернуть свое приложение и иногда получаю такую ошибку:
Failure
[INSTALL_FAILED_CONTAINER_ERROR]
Я пытался погуглить, но не нашел, что означает ошибка или чем она вызвана. Я развертываю через IDE (IntelliJ) файл копируется на устройство в папку / data / local / tmp (неуправляемый Huawei Ideos, работает 2.2), но диспетчеру пакетов это, похоже, не нравится. Перед установкой apk я уже заранее удалил приложение с устройства. Я также убедился, что на устройстве нет старого файла в каталоге / data / local / tmp. Тем не менее, я получаю эту ошибку. Пакет должен быть подписан с помощью ключа отладки, поскольку я развертываю через IDE, «запустив» приложение.
$ pwd
/data/local/tmp
$ ls -l
-rw-rw-rw- shell shell 17257686 2011-04-21 20:31
com.company.shop
$ pm install -r com.company.shop
pkg: com.company.shop
Failure [INSTALL_FAILED_CONTAINER_ERROR]
Что это значит и как решить?
Редактировать / Update:
Я могу избежать ошибки, если не разрешу установку приложения на SD-карту, установив
android:installLocation="internalOnly"
в манифесте. Это нормально для разработки, но для производства это не совсем то, что я хочу - поскольку мое приложение довольно велико - 17 МБ; поэтому я предпочитаю, чтобы он был на SD-карте. Как когда-либо установить его во внешнюю память без рутирования (поскольку это единственный способ удалить /mnt/secure/asec/smdl2tmp1.asec, который, похоже, тоже является одним из решений).
источник
pm install -f com.company.shop
?INSTALL_FAILED_CONTAINER_ERROR
проблемы, для некоторых из них мой ответ здесь: stackoverflow.com/a/30343659/313113Ответы:
удалите этот файл с вашего устройства
Редактировать / обновлять Матиас Конрад (OP):
Если у вас нет root-доступа, вам необходимо смонтировать SD-карту и удалить ее через компьютер:
источник
Измените место установки с
в
в вашем проекте AndroidManifest.xml.
источник
Если вы используете эмулятор, отредактируйте его и добавьте больше памяти. У меня была такая же проблема, и все, что я сделал, это отредактировал память своего AVD с 200 МБ до 1000 МБ, и проблема, похоже, исчезла ... Удачи.
источник
Это означает, что предыдущая установка была повреждена. Если вы устанавливаете на внешний, я бы посоветовал вам отформатировать SD-карту и попробовать еще раз.
источник
У меня неоднократно возникала эта ошибка. Я нашел самый простой способ полностью избежать ошибки - это просто отформатировать SD-карту. Использование внутренних инструментов телефона или эмуляторов. Я обнаружил, что автоматически сгенерированные SD-карты или даже создание вашего собственного sdcard.iso не работает и вызывает эту ошибку, если она не сформирована внутренними инструментами Android.
источник
Для меня это было вызвано нехваткой места на SD-карте моего эмулятора. Я работал с довольно большим проектом, и я думал, что 40 мб будет достаточно, но я изменил его на 200 мб, и проблема исчезла.
источник
Была такая же ошибка с различными
.apk
на Cyanogenmod 12.1 (Android 5.1.1) на моем Note 8 со вторым разделом для Link2SD. Мне удалось установить приложения, запустив установку через adb как root:источник
Я получил это сообщение об ошибке от Android 5.0.1. Я изменил предпочтительное место установки на «Съемная SD-карта» через Настройки-> Приложения-> Предпочтительное место установки.
Я снова изменил этот параметр на «Дать решение системе», и сообщение об ошибке исчезло.
источник
Для меня это был язык устройства. Я изменил язык на арабский, чтобы протестировать свое приложение. Потом я получил эту ошибку. Возврат к языку помогло.
источник
android: installLocation = "auto" работает .. !!
Если нет, один раз проверьте размер внешнего хранилища. [Доступная память> размер приложения] Если места для хранения недостаточно, также выдается эта ошибка.
источник
У меня была аналогичная проблема с эмулятором. Его не стало, когда я изменил тип процессора эмулятора с ARM на Intel.
источник
в некоторых ситуациях удаление
libs/android-support-v4.jar
вызывает эту ошибку.источник
Для меня удаление нескольких приложений решило проблему. Когда в локальном хранилище достаточно памяти, развертывание APK завершается успешно. Но обычно я просто перезапускаю гаджет, и установка завершается. Также могут помочь некоторые программы, такие как Clean Master. Просто почаще стирайте ненужные процессы и закрывайте программы с помощью Clean Master и получайте достаточно памяти.
источник
Проблема была решена после перезагрузки устройства.
источник