在Android模拟器设备中无法使用SD卡

时间:2017-11-10 06:50:28

标签: android android-emulator avd android-sdcard mount

我正在尝试使用默认的Android AVD模拟器。它工作正常,但我使用外部存储/ SD卡时遇到问题。

似乎根本没有安装SD卡图像。

Environment.getExternalStorageState()
External: removed

这是我的配置

enter image description here

配置文件本身

avd.ini.encoding=UTF-8
AvdId=Nexus_4_API_16
PlayStore.enabled=false
abi.type=x86
avd.ini.displayname=Nexus 4 API 16
disk.dataPartition.size=800M
hw.accelerometer=yes
hw.audioInput=yes
hw.battery=yes
hw.camera.back=emulated
hw.camera.front=emulated
hw.cpu.arch=x86
hw.cpu.ncore=4
hw.dPad=no
hw.device.hash2=MD5:6930e145748b87e87d3f40cabd140a41
hw.device.manufacturer=Google
hw.device.name=Nexus 4
hw.gps=yes
hw.gpu.enabled=yes
hw.gpu.mode=auto
hw.initialOrientation=Portrait
hw.keyboard=yes
hw.lcd.density=320
hw.mainKeys=no
hw.ramSize=1536
hw.sdCard=yes
hw.sensors.orientation=yes
hw.sensors.proximity=yes
hw.trackBall=no
image.sysdir.1=system-images/android-16/google_apis/x86/
runtime.network.latency=none
runtime.network.speed=full
sdcard.size=1000M
showDeviceFrame=yes
skin.dynamic=yes
skin.name=nexus_4
skin.path=/Users/user/Library/Android/sdk/skins/nexus_4
tag.display=Google APIs
tag.id=google_apis
vm.heapSize=80

请帮忙解决这个问题。我试图重新创建一个虚拟设备,但这并没有解决问题

更新

这不起作用

  ./emulator -avd Nexus_4_API_16 -sdcard ~/Temp/mainSdCard.img

2 个答案:

答案 0 :(得分:4)

我发现的唯一解决方案就是测试不同的仿真器。 目前我正在使用Nexus 5x with Android 4.3,它运行正常。

另一个可能帮助某人的解决方案是在您创建模拟器之后,停止它并更改Android Studio默认生成的SD卡的大小。

我希望这会有所帮助。

答案 1 :(得分:1)

在运行较旧的Android版本时,似乎是某些(当前最新的)模拟器版本Android Studio 2.3+的已知错误,例如: API 15-18。

https://issuetracker.google.com/issues/37138030

我在使用Android Studio 3.0.1的模拟器27.1.10-4607264(撰写时的最新版本)上发生了这种情况。我目前无法使用任何解决方法,也没有想出如何运行旧的仿真器版本。

使用API​​ 19(Android 4.4)或更新版本,但如果您想在较旧的Android版本上测试操作,这显然不是一个很好的解决方案。