Install failed insufficient storage android studio

INSTALL_FAILED_INSUFFICIENT_STORAGE #4508

Comments

flanj commented Apr 26, 2020

adb: failed to install E:\programming\AndroidStudioProjects\storegarve\build\app\outputs\apk\app.apk: Failure [INSTALL_FAILED_INSUFFICIENT_STORAGE]
Error launching application on Android SDK built for x86.

After a couple of hours I get the above message. either flutter clean or deleting the build directory usually rectifies. Why does this happen? I have it working again by selecting a defualt emulator then using the new one I created.

Version info

E:\programming\AndroidStudioProjects\storegarve>flutter doctor -v
[√] Flutter (Channel beta, v1.17.0, on Microsoft Windows [Version 10.0.18362.778], locale en-GB)
• Flutter version 1.17.0 at E:\flutter\flutter
• Framework revision d3ed9ec945 (3 weeks ago), 2020-04-06 14:07:34 -0700
• Engine revision c9506cb8e9
• Dart version 2.8.0 (build 2.8.0-dev.18.0 eea9717938)

[√] Android toolchain — develop for Android devices (Android SDK version 29.0.3)
• Android SDK at C:\Users\flanj\AppData\Local\Android\sdk
• Platform android-29, build-tools 29.0.3
• ANDROID_HOME = C:\Users\flanj\AppData\Local\Android
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
• All Android licenses accepted.

[√] Chrome — develop for the web
• Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[√] Android Studio (version 3.6)
• Android Studio at C:\Program Files\Android\Android Studio
• Flutter plugin version 45.1.1
• Dart plugin version 192.7761
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)

[√] Connected device (3 available)
• Android SDK built for x86 • emulator-5554 • android-x86 • Android 10 (API 29) (emulator)
• Chrome • chrome • web-javascript • Google Chrome 81.0.4044.122
• Web Server • web-server • web-javascript • Flutter Tools

• No issues found!

The text was updated successfully, but these errors were encountered:

pq commented Apr 28, 2020

Does this post help?

no-response bot commented May 5, 2020

Without additional information we’re unfortunately not sure how to resolve this issue. We’re going to close this bug for now, but please don’t hesitate to comment on the bug if you have any more information for us; we’re happy to reopen. Thanks for your contribution!

Chayuga commented Jul 7, 2020 •

adb: failed to install E:\programming\AndroidStudioProjects\storegarve\build\app\outputs\apk\app.apk: Failure [INSTALL_FAILED_INSUFFICIENT_STORAGE]
Error launching application on Android SDK built for x86.

After a couple of hours I get the above message. either flutter clean or deleting the build directory usually rectifies. Why does this happen? I have it working again by selecting a defualt emulator then using the new one I created.

Version info

E:\programming\AndroidStudioProjects\storegarve>flutter doctor -v
[√] Flutter (Channel beta, v1.17.0, on Microsoft Windows [Version 10.0.18362.778], locale en-GB)
• Flutter version 1.17.0 at E:\flutter\flutter
• Framework revision d3ed9ec945 (3 weeks ago), 2020-04-06 14:07:34 -0700
• Engine revision c9506cb8e9
• Dart version 2.8.0 (build 2.8.0-dev.18.0 eea9717938)

[√] Android toolchain — develop for Android devices (Android SDK version 29.0.3)
• Android SDK at C:\Users\flanj\AppData\Local\Android\sdk
• Platform android-29, build-tools 29.0.3
• ANDROID_HOME = C:\Users\flanj\AppData\Local\Android
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
• All Android licenses accepted.

[√] Chrome — develop for the web
• Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[√] Android Studio (version 3.6)
• Android Studio at C:\Program Files\Android\Android Studio
• Flutter plugin version 45.1.1
• Dart plugin version 192.7761
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)

Читайте также:  Скины для аимп для андроид

[√] Connected device (3 available)
• Android SDK built for x86 • emulator-5554 • android-x86 • Android 10 (API 29) (emulator)
• Chrome • chrome • web-javascript • Google Chrome 81.0.4044.122
• Web Server • web-server • web-javascript • Flutter Tools

Источник

Решение ошибки INSTALL_FAILED_INSUFFICIENT_STORAGE в Android

Ошибка INSTALL_FAILED_INSUFFICIENT_STORAGE — проклятие жизни каждого Android разработчика. Это происходит независимо от размера приложения или объема доступной памяти. Перезагрузка целевого устройства на короткое время решает проблему, но вскоре возвращается. Есть сотни (если не тысячи) сообщений на доске объявлений от людей, спрашивающих, почему возникает проблема, но люди в Google разочарованно молчат об этой проблеме.

Есть простой обходной путь. Если ваше тестовое устройство работает с Android 2.2 или более поздней версией, добавьте атрибут Android:installLocation в файл манифеста вашего приложения со значением «preferExternal» . Это приведет к установке приложения на внешнюю память устройства, например на SD-карту телефона.

Это скорее пластырь, чем исправление, и, возможно, он не идеален, если вы хотите, чтобы ваше законченное приложение было установлено во внутренней памяти устройства. Но это по крайней мере сделает процесс разработки намного менее расстраивающим.

Это всего лишь временное решение , а не реальное исправление.

После того, как это случилось со мной и я не был доволен текущими ответами, я пошел на работу, пытаясь выяснить это из источника AOSP. Я нашел РЕАЛЬНОЕ решение.

Объяснение

Во-первых, немного (упрощенного) фона о том, как Android устанавливает и обновляет

Первый раз приложение установлено:

Файл APK сохраняется как

Когда приложение должно быть обновлено:

Обновленный файл APK сохраняется как:

Первая версия (1.apk) удаляется.

На нашем следующем обновлении (ях):

  1. Новый APK сохраняется как (1.apk), а (2.apk) удаляется (повторяется вечно).

Проблема, с которой сталкивается большинство из нас, возникает при обновлении приложения, но удаление старого APK не удается. Что само по себе еще не приводит к сбою обновления, но приводит к тому, что в /data/app есть два APK-файла.

В следующий раз, когда вы попытаетесь обновить приложение, система не сможет переместить его временный файл, поскольку ни (1.apk), ни (2.apk) не пусты. Поскольку File # renameTo (File) не выдает исключение, а возвращает логический PackageManager, у него нет никакого способа узнать, почему он возвращает INSTALL_FAILED_INSUFFICIENT_STORAGE, даже если ошибка не имеет никакого отношения к количеству свободного места.

Решение

ИЛИ

Используйте свой любимый метод для удаления ОБОИХ:

Убедитесь, что ничто другое не блокирует будущие установки таким же образом. В моем случае у меня был каталог /data/app-lib/ -1 ! В этом случае установка на SD-карта сработала, а затем и на внутреннюю память. (Создание /data/app-lib/ без окончания -1 .)

Почему другие «решения» работали

Код для установки на внешнее хранилище значительно отличается, что не имеет те же проблемы

При удалении приложения удаляется только одна версия APK-файла в /data/app . Вот почему вы можете переустановить его один раз, но не обновлять.

Количество свободного места в эмуляторе не имеет значения при возникновении этой ошибки.

Вам необходимо увеличить объем памяти эмулятора Android. Для этого есть два пути:

Щелкните правой кнопкой мыши на корне вашего проекта Android, перейдите в «Запуск от имени» и затем «Выполнить настройки . «. Найдите узел «Приложение Android» в дереве слева, затем выберите свой проект и перейдите на вкладку «Цель» в правой части окна. Найдите поле «Дополнительные параметры командной строки эмулятора» (иногда вы Мне нужно будет увеличить окно) и, наконец, вставить туда «-partition-size 1024». Нажмите Apply, а затем Run, чтобы использовать эмулятор.

Читайте также:  Файлового менеджера для андроид

Перейдите к настройкам Eclipse’s и выберите «Launch» Add «-partition-size 1024» в поле «Параметр эмулятора по умолчанию». Нажмите «Применить» и используйте эмулятор как обычно.

Спасибо за размещение этого вопроса. У меня есть некоторые дополнительные идеи, которые могут помочь некоторым разработчикам.

Я отлаживаю свое приложение на устройстве (не на эмуляторе). На устройстве /data есть 21 МБ свободного места (как показывает «df» при выполнении «adb Shell»), а у моего приложения всего 5 МБ. Однако я обнаружил, что если я удалю другие приложения на устройстве (без перезагрузки телефона или перезапуска adbd), INSTALL_FAILED_INSUFFICIENT_STORAGE ненадолго уйдет, а затем вернется.

Похоже, что для отладки моего 5-мегабайтного приложения в /data требуется больше, чем 20 МБ пространства, и, кроме того, что-то протекало каждый раз, когда я отлаживал свое приложение.

Поэтому я сделал «adb Shell» и перечислил каталог ENTIRE /data с

И я посмотрел на 5000-строчный вывод, чтобы увидеть, куда уходит все пространство.

Я обнаружил огромное количество потраченного впустую пространства на моем устройстве в каталоге /data/klog в виде старых файлов журналов от месячных сессий отладки.

Это были не мои файлы журналов: они были созданы какой-то частью инфраструктуры Android.

Я удалил их и сразу же сэкономил 58 МБ, которые не были отнесены в приложении «Настройки» к какому-либо конкретному приложению. У меня маленькое устройство, поэтому 58 МБ очень важно (около 40%).

До сих пор я не получил INSTALL_FAILED_INSUFFICIENT_STORAGE снова после многих запусков. Будем надеяться, что это была настоящая проблема, хотя ОП предполагает, что на его устройстве было достаточно места (но не сказал, сколько).

Надеюсь, некоторые из вас также смогут выйти из INSTALL_FAILED_INSUFFICIENT_STORAGE, периодически удаляя /data/klog/* .

Или, по крайней мере, вы можете сделать ls -a -l -R в /data , чтобы увидеть, куда уходит все ваше пространство, если действительно есть какая-то (скрытая) проблема с пространством.

Источник

Решение ошибки INSTALL_FAILED_INSUFFICIENT_STORAGE на Android [закрыто]

Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост .

Закрыто 5 лет назад .

INSTALL_FAILED_INSUFFICIENT_STORAGE Ошибка отрава жизни каждого Android разработчика. Это происходит независимо от размера приложения или объема доступной памяти. Перезагрузка целевого устройства на короткое время решает проблему, но вскоре возвращается. Существуют сотни (если не тысячи) сообщений на доске объявлений от людей, спрашивающих, почему возникает проблема, но люди в Google разочарованно молчат об этой проблеме.

Есть простой обходной путь. Если ваше тестовое устройство работает под управлением Android 2.2 или более поздней версии, добавьте android:installLocation атрибут в файл манифеста приложения со значением «preferExternal» . Это приведет к установке приложения на внешнюю память устройства, например на SD-карту телефона.

Это скорее пластырь, чем исправление, и, возможно, он не идеален, если вы хотите, чтобы ваше законченное приложение было установлено во внутренней памяти устройства. Но это по крайней мере сделает процесс разработки намного менее расстраивающим.

Это только временное решение, а не реальное исправление.

После того, как это случилось со мной и я не был доволен текущими ответами, я начал работать, пытаясь выяснить это из источника AOSP. Я нашел РЕАЛЬНОЕ решение.

объяснение

Прежде всего, немного (упрощенно) предыстории того, как Android устанавливает и обновляет

Первый раз приложение установлено:

APK файл сохраняется как

Когда приложение должно быть обновлено:

Обновленный файл APK сохраняется как:

Первая версия (1.apk) удаляется.

На нашем следующем обновлении (ях):

  1. Новый APK сохраняется как (1.apk), а (2.apk) удаляется (повторяется вечно).

Проблема, с которой сталкивается большинство из нас, возникает при обновлении приложения, но удаление старого APK не удается. Что само по себе еще не приводит к сбою обновления, но приводит к тому, что в нем есть два APK-файла /data/app .

Читайте также:  Альтернативные контакты для андроид

В следующий раз, когда вы попытаетесь обновить приложение, система не сможет переместить его временный файл, поскольку ни (1.apk), ни (2.apk) не пусты. Поскольку File # renameTo (File) не генерирует исключение, а возвращает логический PackageManager, у него нет никакого способа узнать, почему он возвращает INSTALL_FAILED_INSUFFICIENT_STORAGE, даже если ошибка не имеет никакого отношения к количеству свободного места.

Решение

ИЛИ

Используйте ваш любимый метод для удаления ОБА :

Убедитесь, что ничто другое не блокирует будущие установки таким же образом. В моем случае у меня был /data/app-lib/ -1 каталог, задерживающийся вокруг! В этом случае сработала установка на SD-карту и последующий переход на внутреннюю память. (Создание /data/app-lib/ без -1 окончания.)

Почему другие «решения» работали

Код для установки на внешнее хранилище значительно отличается, что не имеет те же проблемы

При удалении приложения удаляется только одна версия файла APK в /data/app . Вот почему вы можете переустановить его один раз, но не обновлять.

Количество свободного места в эмуляторе не имеет значения при возникновении этой ошибки.

Вам необходимо увеличить объем памяти эмулятора Android. Для этого есть два пути:

Щелкните правой кнопкой мыши на корне вашего Android-проекта, перейдите к «Запуск от имени», а затем к «Запустить настройки . ». Найдите узел «Приложение Android» в дереве слева, затем выберите свой проект и перейдите на вкладку «Цель» в правой части окна, найдите поле «Дополнительные параметры командной строки эмулятора» (иногда вы Мне нужно будет увеличить окно) и, наконец, вставить туда «-partition-size 1024». Нажмите Apply и затем Run, чтобы использовать ваш эмулятор.

Перейдите в « Настройки» Eclipse и выберите «Запустить», добавить «-partition-size 1024» в поле «Параметр эмулятора по умолчанию». Нажмите «Применить» и используйте эмулятор как обычно.

Спасибо за размещение этого вопроса. У меня есть некоторые дополнительные идеи, которые могут помочь некоторым разработчикам.

Я отлаживаю свое приложение на устройстве (не на эмуляторе). На устройстве свободно включено 21 МБ /data (как показывает «df» при выполнении «adb shell»), а мое приложение — всего 5 МБ. Однако я обнаружил, что если я удалю другие приложения на устройстве (без перезагрузки телефона или перезапуска adbd), INSTALL_FAILED_INSUFFICIENT_STORAGE ненадолго уйдет, а затем вернется.

Таким образом, кажется, что для отладки моего 5-мегабайтного приложения требуется больше, чем 20 мегабайт /data , и, кроме того, что-то просачивалось каждый раз, когда я отлаживал свое приложение.

Поэтому я сделал «оболочку adb» и перечислил ВЕСЬ /data каталог с

И я посмотрел на 5000-строчный вывод, чтобы увидеть, куда уходит все пространство.

Я обнаружил огромное количество потраченного впустую пространства на моем устройстве в /data/klog каталоге в виде старых файлов журналов от месячных сессий отладки.

Это были не мои файлы журналов: они были созданы какой-то частью инфраструктуры Android.

Я удалил их и сразу же сэкономил 58 МБ, которые не были отнесены в приложении «Настройки» к какому-либо конкретному приложению. У меня маленькое устройство, поэтому 58 МБ очень важно (около 40%).

До сих пор я не получил INSTALL_FAILED_INSUFFICIENT_STORAGE снова после многих запусков. Будем надеяться, что это была настоящая проблема, хотя ОП предполагает, что на его устройстве было достаточно места (но не сказал, сколько).

Надеемся, что некоторые из вас также смогут избежать INSTALL_FAILED_INSUFFICIENT_STORAGE путем периодического удаления /data/klog/* .

Или, вы можете по крайней мере сделать ls -a -l -R в , /data чтобы увидеть , где все ваше пространство будет, если действительно есть на самом деле некоторые (скрытые) пространства вопрос.

Источник

Оцените статью