一般可以通过创建模拟器的时候给模拟器设置SD卡Size就行。但一般我们都会创建多个模拟器,而且又想模拟器共用同一个SD卡。这时候,可以使用SDcard镜像文件。
1、创建SDcard镜像文件
使用命令行(cmd),进入Android SDK安装路径下的tools目录,如果安装路径是E:\android-sdk-windows\tools,就输入命令
E: 回车
cd android-sdk-windows\tools 回车
mksdcard 1024M sdcard.img
该命令会在当前目录下生成一个sdcard.img文件,该文件时Android模拟器的SD卡镜像文件。1024M表示SD卡有1024M大小,即1G容量。目前Android支持8M~128G的SD卡
2、运行带有SD卡的模拟器
创建了SD卡镜像文件,只是创建了一个文件,还不能在模拟器中直接使用,要在模拟器加载该SD卡。
方法:新建模拟器的时候,指定SD卡镜像文件的路径,并且加入对SD卡的支持选项。
打开Eclipse,window->android SDK and AVD manager
创建时,在SD card那一栏,选择file,并将其设置为sdcard镜像文件的路径。点击hardware一栏中的new,选择SD card surport。点击创建AVD。
3、向该SD卡中上传文件。
使用命令行(cmd),进入Android SDK安装路径下的tools目录,运行命令
adb push E:\test.3gp sdcard/test.3gp
其中,E:\test.3gp sdcard/test.3gp
其中E:\test.3gp是本地要上传的文件,sdcard/test.3gp为上传到SD卡中的路径。注意吗,adb push 电脑路径 模拟器路径在电脑路径中,必须使用“\”,在模拟器路径中必须使用“/”,并且模拟器的根路径是只读的。
4、使用该SD卡中的文件
第一种方式:安装文件浏览器可以查看SD card中的内容。
命令行(cmd)中,进入Android SDK的安装路径下的tools目录中,运行:adb install ***.apk
第二种方式,用模拟器中的Dev Tools里面的media scanner查看SD card的内容。
发表在 Android | 标签为 android, sdcard | 留下评论
详解android的snapshot
发表于 2011 年 04 月 18 日 由 kangnixi0 views
参考:关于Android AVD中的snapshot
写程序的时候,经常会碰到:The application has stopped unexpectly…
有时候,会想对原来软件增加新功能或者修改bug。在eclipse修改后保存代码(注意,要保存所有你修改过的文件)。然后右击你的项目—Run as—Android Application,结果可能如你所愿,增加或修改了。但是也会遇到一种情况,不管你怎么修改源文件都无法应用你的修改,程序还是跟上一次关闭时的状态一样。原因可能是snapshot引起的。
Snapshot的意思是“快照”。能够保存AVD关闭时的状态,然后再下一次启动的时候显示上一次关闭时的状态,类似缓存机制。这样的话,效果自然无法显示了。一般取消enable就可以了。
向模拟器的sdcard中添加文件有两种方法:
1.在eclipse的DDMS视图中操作
启动eclipse---打开DDMS视图---选择File Explorer,出现下面的窗口
选中sdcard文件夹---点击,选择你需要添加的文件就可以了
2.运用adb命令操作
先将要添加的文件放到platform-tools(我的platform-tools路径 D:\Android\android-sdk-windows\platform-tools)文件夹下,之后在命令行窗口进入 D:\Android\android-sdk-windows\platform-tools,输入adb命令添加文件,如下图所示:
这时,文件music.mp3就被添加到sdcard/Android目录下面
之后可以在模拟器中打开dev tools,运行Media Scanner,在音乐中播放添加的音乐
还可以在命令行运行adb shell来查看sdcard中的文件,如下图所示:
向模拟器的sdcard中添加文件常见的错误:
1.Failed to push items null
解决的方法:首先重启eclipse,如果重启之后再出现这个问题,那就要修改超时数,依次展开eclipse---windwos---Preferences---Android---DDMS---ADB connection time out (ms),将参数改得大一些,如下图所示:
2.Failed to push selection: Invalid argument
原因:android不支持中文名称的文件
3.Failed to push XXXXX.txt(添加的文件) on emulator- : Read-only file system
解决的方法:在启动模拟器的时候带着的参数中,模拟器镜像路径需是绝对路径:-sdcard E:\android\android-sdk-windows\tools\sdcard.img
注意这个绝对路径里面不能带空格(如Program Files)
注意:(卷标、标签)必须是sdcard。如mksdcard -l sdcard128Me:\haogood.image(而不能是mksdcard -l haogood128Me:\haogood.image)