0

我试图在模拟器上运行刚刚构建的Android图像(通用aosp_x86-eng目标使用Google来源的当前master构建的目标)。仿真器似乎工作正常,但它不会在使用-sdcard选项运行时安装外部SD卡。模拟器版本是来自git的版本。一切都在无头服务器上执行。Android模拟器不会安装外部SD卡

我的步骤完整列表:

repo init -u https://android.googlesource.com/platform/manifest 
repo sync 
. build/envsetup.sh 
lunch aosp_x86-eng 
make -j16 
mksdcard 1G sd.img 
emulator -no-window -no-skin -no-audio -sdcard sd.img & 
adb shell mount | grep vfat 

虚拟设备似乎正确转发,所看到的adb shell blkid输出:

/dev/block/vda1: LABEL="system" UUID="da594c53-9beb-f85c-85c5-cedf76546f7a" TYPE="ext4" 
/dev/block/vdb: LABEL="cache" UUID="f73de97f-7017-ca5e-9b47-ca9c8f633e83" TYPE="ext4" 
/dev/block/vde1: LABEL="vendor" UUID="6d16bab1-58d9-3c5d-8f14-f608f924affd" TYPE="ext4" 
/dev/block/vdf: LABEL="SDCARD" UUID="1CEA-0B06" TYPE="vfat" 

然而,它不是安装在由vold。可能是什么问题呢?

当我使用通过SDK管理器下载的Android 8图像运行模拟器时,我也会得到相同的结果。使用Android 7,SD卡可以正常工作。

编辑:

解决了自带的aosp_x86-ENG版本(见我自己的答案)模拟器的问题。在Android SDK的模拟器上,原因可能不同。

+0

[Android模拟器无法安装SD卡]的可能重复(https://stackoverflow.com/questions/45681272/android-emulator-wont-mount-sd-card) – InsanityOnABun

+0

看看这个:https: //stackoverflow.com/a/45967319/929560 – InsanityOnABun

+0

@InsanityOnABun nope,我的情况是不同的。但我已经解决了它。我会自己发表一个答案。 – Thunderbeef

回答

0

原来,在我的情况下,无头模式是罪魁祸首。当我用-no-skin -no-window选项运行模拟器时,SD卡未安装。如果我删除这些选项(并启用X11转发,因为我在无头服务器上工作),一切正常。

我还想知道为什么我无法在无头模式下使用SD卡,但至少我能够解决所需任务的问题。