slider

还是菜鸟
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

android2.3:加载你的SD卡与can't mount /dev/block/mmcblk0

Posted on 2011-11-15 21:30  slider  阅读(3267)  评论(0编辑  收藏  举报

  

  2.3的源码下载编译后,启动模拟器通常没有挂载存储卡(SD卡),这就导致了一个问题:很多需要SD卡的测试都无法做,比如你想用traceview跟踪你的程序(需要生成traceview文件),操作图片(没有存储卡你怎么push图片),某些应用程序不能用,比如camera等。

  废话不多说,说说过程:

  首先创建你的sdcard文件:mksdcard 20M sdcard_20M.img
  然后打开你的start.sh文件(你下载源码会有,也就是启动模拟器的shell文件),末尾加上:-sdcard ./sdcard/sdcard_name.img (这个是你sd卡的目录)
  接着运行. start.sh,启动android2.3的模拟器

  进入模拟器shell环境前先adb remount,然后输入下面的命令:

  mount -t vfat /dev/block/mmcblk0 /mnt/sdcard。

  参数t表示文件类型(这里是vfat类型),记住,只能在adb shell环境下,否则会出现:mount: mount point /mnt/sdcar does not exist等一系列问题,这个是因为系统只能寻找操作系统的跟目录下的/mnt/sdcard目录。很多人会出现 can't mount /dev/block/mmcblk0这个错误,也就是没有在adb shell环境下,命令找不到/devblock/mmcblk0这个文件,因为linux系统下也有个dev文件,但是没有mmcblko文件哦