Как увеличить память для эмулятора Android?(INSTALL_FAILED_INSUFFICIENT_STORAGE)
-
19-09-2019 - |
Вопрос
Я получаю это иногда (не часто) для одного из моих проектов, всего за пару занятий.
Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE
Как увеличить память эмулятора?
Решение
Обновлять
На тот момент, когда я пишу это, этому ответу уже почти восемь лет, и он устарел примерно на пять лет.Но это все еще (на момент написания) «принятый» ответ, потому что он ответил на вопрос. когда его спросили.
Более новый ответ, применимый к новым инструментам Android Studio, можно найти здесь: https://stackoverflow.com/a/35828035/62 -- это отличный ответ со снимками экрана.Если вы используете Android Studio, игнорируйте ответ Eclipse ниже.
Оригинальный ответ на основе Eclipse
Я искал ответ на этот вопрос и был неудовлетворен приведенными выше ответами.Но потом я нашел отвечать, так что вот это на будущее:
Чтобы подвести итог (и уточнить), в Eclipse перейдите в раздел «Отладка конфигураций».Вы можете найти это в раскрывающемся списке под значком «отладка».Выберите «цель» и выберите предпочтительную цель эмулятора для запуска.Затем в разделе «Дополнительные параметры командной строки эмулятора» добавьте следующее:
-размер раздела 1024
Затем ЗАКРЫТЬ эмулятор (и удалить все устройства) и щелкнуть значок отладки, который запустит выбранный вами предпочтительный эмулятор.Это важно:Eclipse необходимо запустить отладчик, а не AVD.
Это решило проблему для меня.
Другие советы
В Android-студии
Откройте AVD-менеджер.
Нажмите значок «Редактировать», чтобы отредактировать AVD.
Нажмите «Показать дополнительные настройки».
При необходимости измените размер внутренней памяти, оперативной памяти и SD-карты.Нажмите «Готово».
Подтвердите всплывающее окно, нажав «Да».
Сотрите данные на AVD и подтвердите всплывающее окно, нажав «Да».
Важный: Если после увеличения размера вам не будет предложено автоматически стереть данные, вам придется сделать это вручную, открыв раскрывающееся меню AVD и выбрав «Очистить данные».
Теперь запустите и используйте свой эмулятор с увеличенным объемом памяти.
Добавьте следующее в avd config.ini
disk.dataPartition.size=1024MB
Дайте мне знать, если это работает и для вас.
Я добавил в строку
Запустите AVD-менеджер
Выберите свой AVD и нажмите кнопку «Подробнее...».
В моем случае AVD Manager устанавливает размер диска как
disk.dataPartition.size=4000M
Этот Неверное значение, размер диска составляет около 500 МБ, несмотря на указанные цифры.
Перейдите в папку AVR по пути в «Подробности AVD».
Отредактируйте его в config.ini, чтобы
disk.dataPartition.size=4000MB
и удалите все файлы .img.
Я делал установку apk:
adb install /home/me/jones_android-arm.apk
И я получил сообщение об ошибке, сообщающее мне, что
/data/local/tmp/jones_android-arm.apk
был слишком большим.Используя инструменты SDK от R15, и ADT 15 Я смог использовать Manager AVD, чтобы манипулировать некоторыми из существующих настройки эмулятора:
Window-> AVD Manager -> (select you virtual machine) -> Edit
Затем перейдя в окно свойств оборудования чуть ниже «кожа:» Я смог выбрать с аппаратным обеспечением:Новая кнопка «Идеальный размер раздела».Однако я не мог установить значение, кроме «0».Неустрашимый, я пошел в свой каталог $ {Home}/. Android/AVD, был каталог «myvm.avd».Заходя в этот каталог, я нашел файл «config.ini».Была запись:
disk.dataPartition.size=0
Я установил это:
disk.dataPartition.size=1024
..Затем вернулся к AVD Manager, выбрал MYVM, выбрал «Start», решил уничтожить пользовательские данные выиграть диалог после следующего и смог запустить и установить.
В менеджере avd есть опция «идеальный размер системного раздела», попробуйте установить для нее значение 1024 МБ или используйте параметр запуска из командной строки, который делает то же самое.
К вашему сведению, я столкнулся с этой проблемой только с образом эмулятора 4.0.
эта проблема возникает с андроидом 1.5..попробуй 2.0 или 2.1 или 2.2
Просто запустите эмулятор с помощью командной строки следующим образом:
emulator -avd <your avd name> -partition-size 1024 -wipe-data
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.junkfoodian"
android:installLocation="preferExternal" // this line can work for Installation error: // // INSTALL_FAILED_INSUFFICIENT_STORAGE
Я новичок, но у меня возникла эта проблема, когда я играл с «Hello Grid View».Я пытался использовать свои собственные фотографии, размер файлов которых был очень большим.
Быстрое решение заключалось в том, чтобы уменьшить количество фотографий, уменьшив тем самым размер APK-файла.
Но, думаю, мой дополнительный вопрос ко всем, кто зайдет в эту тему, таков:Как прикрепить к приложению большие файлы, такие как JPG и MP3, и убедиться, что они сохраняются на SD-карте, чтобы APK оставался небольшим?
вам нужно увеличить виртуальную память эмулятора
Как увеличить виртуальную память эмулятора
эмулятор -avd «Имя эмулятора» -размер раздела 2024
после этого попробуйте установить APK
Обновите настройки в AVD Manager и запустите устройство, включив «Очистка пользовательских данных».Это сработало для меня.
Чтобы изменить размер хранилища эмулятора Android в Linux:
1) установить qemu
2) Найдите каталог, содержащий файлы img виртуальной машины.Что-то вроде ~/.android/avd/.avd и перейдите к нему.
3) Измените размер изображений ext4:то естьдля увеличения с 500Мб до 4Гб выполнить
qemu-img resize userdata.img +3.5GB
qemu-img resize userdata-qemu.img +3.5GB
4) увеличить файловую систему:
e2fsck -f userdata.img
resize2fs userdata.img
e2fsck -f userdata-qemu.img
resize2fs userdata-qemu.img
5) Для образа SD-карты, необязательно:спасти данные:
mkdir 1
mount -o loop sdcard.img 1
cp -a 1 2
umount 1
6) измените размер образа со 100Мб на Гб:
qemu-img resize sdcard.img +3.9GB
7) заново сгенерировать файловую систему:
mkfs.vfat sdcard.img
8) опционально:восстановить старые данные:
mount -o loop sdcard.img 1
cp -a 2/* 1
mount -o loop sdcard.img 1
Я думаю, вам следует перезапустить эмулятор с помощью «emulator -wipe-data -avd YourAvdName» или проверить «Очистить данные пользователя» в конфигурации запуска, если вы используете Eclipse.
Я сейчас столкнулся с той же проблемой.
Единственный раз, когда я видел это, это было тогда, когда в файловой системе хоста практически не хватало места.Есть ли у вас много свободного места в файловой системе, где хранится файловая система виртуальной машины?
Это определенно неподходящий ответ, но это небольшой намек.
Если вы хотите использовать статические файлы в своем приложении.Вы должны использовать их как ресурсы или активы.Но если у вас есть проблемы с памятью, например, размер APK-файла должен быть небольшим, вам необходимо изменить дизайн приложения таким образом, чтобы:
вместо того, чтобы помещать их в качестве ресурсов, во время запуска приложения (после установки) вы можете брать файлы (определенно разные файлы, поскольку пользователь может не сохранять файлы, которые вам нужны) с SD-карты.Для этого вы можете использовать ContentResolver для получения аудио и файлов изображений по выбору пользователя.
Благодаря этому вы можете предоставить пользователю еще одну функцию, например, он может загружать аудиофайлы/файлы изображений в приложение по своему выбору.
вы можете запустить его, выбрав один элемент из левого дерева «виртуальное устройство» в диалоговом окне менеджера AVD на платформе Eclipse, в интерфейсе запуска есть опция «Очистить данные пользователя».
Следующий подход сработал для меня
Перейдите в папку Android SDK/tools в окне терминала (если вы не добавили путь к ней)
Убедитесь, что виртуальное устройство, которое вы планируете очистить, выключено.
Запустите команду «./emulator -wipe-data -avd YourAvdName», где YourAvdName — это имя вашего виртуального устройства Android.
Попробуйте выбрать проект -> очистить.Простая чистка может исправить ситуацию.