一尘不染

(重新)在Android模拟器上安装SD卡

linux

在模拟器上,我可以从“设置”中卸载SD卡。

然后,我可以将其安装在操作系统上,然后正常卸载。

我还无法弄清楚如何在仿真器上重新安装它(而无需重新启动它)。

提示:

  • adb命令remount无关:这是关于/system
  • emulator命令无关:仅与启动模拟器有关
  • 将SD卡安装在两个地方当然会搞砸一切(我尝试过)

更多:

  • mount 输出以下内容:

/dev/block//vold/179:0 /sdcard vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount- ro 0 0

  • 尝试使用与上面相同的选项在卸载外壳后再次从外壳挂载,将出现段错误

  • 不知道为什么双斜杠block//vold,我想这只是一个错字


阅读 404

收藏
2020-06-03

共1个答案

一尘不染

开发者指南表明,这是不可能的:

SD卡仿真

您可以创建磁盘映像,然后在启动时将其加载到仿真器,以模拟设备中用户SD卡的存在。为此,您可以使用android工具使用新的AVD创建新的SD卡映像,也可以使用SDK中包含的mksdcard实用程序。

以下各节描述了如何创建SD卡磁盘映像,如何将文件复制到其中以及如何在启动时将其加载到模拟器中。

请注意,您只能在仿真器启动时加载磁盘映像。
同样,您不能从正在运行的仿真器中删除模拟的SD卡。
但是,您可以使用adb或仿真器浏览,发送文件到模拟SD卡以及从中复制/删除文件。

该仿真器支持仿真的SDHC卡,因此您可以创建最大为128 GB的任何大小的SD卡映像。

虽然Android会卸载SD卡,但仿真器进程会保持备份文件打开。

$ ls -go /proc/`pidof emulator`/fd | grep sdcard.img
lrwx------ 1 64 2010-05-13 01:50 10 -> /home/x/.android/avd/WithSD.avd/sdcard.img

更加熟悉QEMU的人也许可以提供进一步的见解,但是,如果您是我,我只会尝试使用NFS解决此问题。

2020-06-03