Verschieben Sie alles auf die SD-Karte auf einem virtuellen Android-Gerät (Emulator)

Ich muss eine seltsame Aufgabe erledigen. Ich möchte das gesamte Android-System auf eine externe SD-Karte auf einem virtuellen Android-Gerät verschieben. Ich muss dies tun, weil der Android-Emulator SD-Befehle emuliert, nur für externes Kartenimage. Und ich möchte während der Verwendung von Android Virtual Device SD-Befehle nachverfolgen.

Genauer gesagt: Ich möchte mindestens die Ordner /system und /data auf einen externen Speicher verschieben. Auf diese Weise könnte dieses System immer noch gut funktionieren =)

Danke schön!

Antworten (1)

Um einige der Systemordner (/system oder /data) auf eine externe emulierte SD-Karte zu verschieben, müssen Sie Folgendes tun:

  1. Erstens sollten /data-Inhalte (zum Beispiel) auf der SD-Karte abgelegt werden. Anfänglich werden sie vom Emulator aus der Datei userdata.img geladen. Sie müssen also ($EMUPATH/system-images/android-19/armeabi-v7a/userdata.img)den Inhalt von userdata.img nach kopieren sdcard.iso.$> dd if=userdata.img of=sdcard.iso
  2. Ich gehe davon aus, dass das virtuelle Android-Gerät erstellt wird. Um die Startkonfiguration zu ändern, müssen Sie fstab.goldfishdie Datei auf ramdisk.img. Wenn es sich um Android 4.4 AVD handelt, dann ramdisk.imgkönnte man das auch unter finden$EMUPATH/system-images/android-19/armeabi-v7a/
  • Erstellen Sie einen temporären Ordner, sagen Sie ramdisk-ext$ mkdir ramdisk-ext
  • Wechseln Sie in das Verzeichnis ramdisk-ext$ cd ramdisk-ext
  • Extrahieren Sie die ramdisk.cpio in den Ordner ramdisk-ext$ gunzip -dcv ../ramdisk.img | cpio -idm
  • Ändern Sie fstab.goldfish $ gedit fstab.goldfishauf diese Weise:
    • Zeichenfolge Nr. 6 von "/dev/block/mtdblock1 /data ..."bis"/dev/block/mmcblk0 /data ..."
  • Neue Ramdisk erstellen$ find . | cpio -H newc -o | gzip -9 >../ramdisk_new.img
  1. Alles ist erledigt, jetzt müssen Sie den Emulator mit Ihrer neuen Ramdisk und benutzerdefinierten SD-Karte starten:$ ./emulator -avd $AVDNAME -sdcard sdcard.iso -ramdisk $EMUPATH/system-images/android-19/armeabi-v7a/ramdisk_new.img

PS Beachten Sie, dass Sie in diesem Beispiel nur einen dieser Ordner (/system oder /data) verschieben können. Vielleicht könnte es geändert werden, indem ein SD-Karten-Image mit mehreren Partitionen erstellt wird.