Есть ли способ смонтировать Android .img для доступа к содержимому AVD (виртуального устройства Android)?
Вопрос
Я чувствую себя немного слепым при разработке эмулятора для Android и не могу видеть файловую систему на AVD (.img).
Есть ли способ смонтировать его в Windows или Linux, чтобы я мог хотя бы видеть список файлов и, возможно, их содержимое?
Бонус, если он также смонтирован с разрешениями на запись.
Спасибо.
Решение
Вы можете просто смонтировать устройство в Linux:
sudo mount -o loop ~/.android/avd/<myvirt>/sdcard.img <destdir>
Другие советы
Как насчет «оболочки adb»?
Это даст вам root-оболочку (на эмуляторе).
Для пользователей MacOS X:
$ hdiutil attach ~/.android/avd/Samsung_Nexus_S.avd/sdcard.img
Да, их можно монтировать.В Ubuntu вы можете смонтировать sdcard.img через vfat и system.img и userdata-qemu.img через yaffs2.Смотрите также: «Что такое файловая система Android??».
Обратите внимание, что файловая система yaffs2 не включена в стандартное ядро Ubuntu.Таким образом, в случае Ubuntu вам необходимо собрать собственное ядро с поддержкой yaffs2, прежде чем вы сможете смонтировать system.img и userdata-qemu.img.Альтернативно, вы также можете просмотреть yaffs2utils которые позволяют извлекать файлы из изображений yaffs2 или создавать новые файлы изображений.Преимущество состоит в том, что вам не нужно собирать собственное ядро для использования этих инструментов.
Другой вариант — использовать проводник в DDMS (Eclipse SDK), там вы можете увидеть всю файловую систему и скачать/загрузить файлы в нужное место.Таким образом, вам не придется монтировать и работать с изображениями.Я попробовал монтировать, и это громоздко, например, если эмулятор запущен, вы не сможете этого сделать.Кроме того, вам нужно будет смонтировать каждое изображение, если вы хотите увидеть все содержимое.