Сбой INSTALL_FAILED_MEDIA_UNAVAILABLE

Я установил JDK, Android SDK и Mono Android для Visual Studio 2010, создал пустое решение и запустил эмулятор с Android 2.3.3 — пока все хорошо.

Когда я пытаюсь развернуть (F5) приложение на эмуляторе, оно подключается к эмулятору, и все идет нормально, пока не начнется «Установка платформы». Затем он загружается в течение нескольких минут и, наконец, выдает исключение, которое выглядит так:

введите здесь описание изображения

Я пытался погуглить, но INSTALL_FAILED_MEDIA_UNAVAILABLE больше нигде не описан.

Я не знаю, является ли это важной деталью, но на своем ПК я переназначил свои домашние папки (Документы, Избранное, Рабочий стол и т. д.) на папки типа «D:\Mikkel\Documenter». Казалось, что при первоначальном запуске эмулятора возникли некоторые проблемы, но после добавления переменной среды «ANDROID_SDK_HOME», указывающей на «D:\Mikkel.android», эмулятор запустился без проблем.

Пожалуйста, порекомендуйте.


person Miros    schedule 28.04.2011    source источник


Ответы (9)


Убедитесь, что на вашем устройстве достаточно внутреннего и внешнего свободного места. Определить доступное свободное место можно командой:

$ adb shell df
Filesystem             Size   Used   Free   Blksize
/dev                   192M    32K   192M   4096
/mnt/asec              192M     0K   192M   4096
/mnt/obb               192M     0K   192M   4096
/system                145M   124M    20M   4096
/data                  196M   167M    29M   4096
/cache                  95M    32M    62M   4096
/mnt/sdcard              3G   177M     3G   32768

В приведенном выше выводе /data (место установки по умолчанию) имеет 29 МБ свободного места, а /mnt/sdcard (SD-карта и внешнее место установки) — 3 ГБ.

Для отладочных сборок необходимо иметь около 40 МБ свободного места (для пакета среды выполнения, пакета платформы и приложений). Выпускные сборки значительно меньше, но выпускные сборки нельзя создавать с ознакомительной версией.

Вероятно, если в вашем эмуляторе нет SD-карты, Android выдаст ошибку INSTALL_FAILED_MEDIA_UNAVAILABLE. (Чтобы добавить SD-карту в эмулятор, запустите приложение android, перейдите в раздел «Виртуальные устройства», выберите устройство, нажмите «Изменить» и просмотрите раздел «SD-карта».)

Беглый просмотр Android предполагает, что DefaultContainerService.java является управляющим фактором, в частности DefaultContainerService.recommendAppInstallLocation(), и что если у вас закончилось внутреннее пространство, а в пакете указано auto (как это делает Mono для Android), а SD-карта недоступна (status.equals(Environment.MEDIA_MOUNTED) равно false), то возвращается RECOMMEND_MEDIA_UNAVAILABLE, что переводится в INSTALL_FAILED_MEDIA_UNAVAILABLE. Это все еще кажется мне странным (не будет ли RECOMMEND_FAILED_INSUFFICIENT_STORAGE иметь больше смысла?), но похоже, что происходит.

person jonp    schedule 28.04.2011
comment
Как увеличить размер /data ? - person Pacerier; 20.12.2011
comment
Удаление другого моего приложения помогло мне. Спасибо! - person Dmitry; 06.06.2014

Возможные проблемы:

  1. Нет внутреннего/внешнего пространства на диске (или SD-карте).
  2. Потеряно соединение во время установки (apk на устройство или эмулятор).

Решение :

  1. Попробуйте освободить место (удалить некоторые приложения).
  2. Попробуйте переподключить перезагрузку телефона/эмулятора (у меня сработало)
person Pramod Dutta    schedule 15.07.2015

Это может быть вызвано нехваткой места на устройстве. Поэтому вместо этого он ищет SD-карту для установки. если этого нет, это вызовет этот ответ.

person Cassie    schedule 03.02.2015

У меня была эта проблема даже с 1 Гб свободного места и .apk размером 1,5 Мб. Что я сделал, так это создал .apk и переместил его в папку data/app. Это сработало для меня. Проблема в том, что я думаю, что ваше устройство должно быть рутировано, чтобы получить доступ к этой папке.

person Golenjor    schedule 10.05.2016

Я решил проблему - кажется, что если вы закроете (странную) пустую подсказку DOS, которая открывается при запуске эмулятора, соединение с эмулятором будет потеряно.

Оставив окно DOS открытым, все работает как часы.

person Miros    schedule 29.04.2011

В моем случае меня выручило переключение режима подключения usb. Вы должны «просто загрузить» устройство через USB вместо того, чтобы вставлять SD-карту в файловую систему ПК.

person Frighty    schedule 03.04.2013
comment
так что вы не можете одновременно использовать SD-карту и устанавливать и отлаживать в основной памяти? - person stu; 12.11.2013

INSTALL_FAILED_MEDIA_UNAVAILABLE

Из-за low memory. Удалите ненужные файлы и приложения.

person IntelliJ Amiya    schedule 19.11.2015

Эта проблема возникла у меня, когда я установил приложение Facabook на свой телефон. поэтому я удалил его и проблема решена.

person Mahdi Jafarzadeh    schedule 28.07.2014

Это связано с нехваткой места на телефоне. Проверьте упаковку сборки. В моем случае это была упаковка всех видов ресурсов, psd и т. д., а файл .apk был огромным, а на телефоне не было столько места.

person Deyan Vitanov    schedule 22.11.2015