|
|
51CTO旗下网站
|
|
移动端

3.3 访问操作SD 卡(手机中的存储卡)

《Android游戏开发从入门到精通》第3章Android 游戏开发基础,本章将引导读者开始Android 手机游戏开发,详细讲解Android 游戏开发的基本知识,为读者进行本书后面知识的学习打下基础。本节为大家介绍访问操作SD 卡(手机中的存储卡)。

作者:王玉芹来源:机械工业出版社|2017-11-14 11:17

3.3 访问操作SD 卡(手机中的存储卡)

在Android 平台中,可以在如下两个地方对文件进行读写操作。

SD 卡。

手机的存储文件夹。

使用I/O 技术可以对上述位置存储的文件进行操作。但是基于SD 卡的特殊性,需要事先实现程序对SD 卡的访问,才能操作SD 卡中的文件。SD 卡是当前智能手机的一部分,人们经常在SD 卡中存储大量的文件,例如音乐、视频和游戏。因为SD 卡的重要性,所以不可避免地需要涉及操作SD 卡中文件的知识。

其实访问SD 中数据的方法与在Java 中进行文件读取操作的方法十分类似,只需要注意正确地设置文件的位置和文件名即可。

在Android 模拟器中,可以使用FAT32 格式的磁盘镜像作为SD 卡的模拟,具体过程如下。

(1)进入Android SDK 目录下的“tools”子目录,然后运行如下命令。

  1. mksdcard -l sdcard 512M /your_path_for_img/sdcard.img 

通过上述命令创建了一个512MB 大小的SD 卡镜像文件。

(2)通过如下命令运行模拟器的时候指定路径,在此需要使用完整路径。

  1. emulator -sdcard /your_path_for_img/sdcard.img 

这样在模拟器中就可以使用“/sdcard”这个路径来指向模拟的SD 卡了。

接下来需要复制本机文件到SD 卡中,甚至需要管理SD 卡中的文件内容。通过如下两种方案可以实现上述功能。

(1)在Linux 系统下可以mount 成一个loop 设备,例如先创建一个名为“android_sdcard”的目录,然后执行下面的命令。

  1. mount -o loop sdcard.img android_sdcard 

这样可以通过管理这个目录的方式管理sdcard 内容。(2)在Windows 可视环境下也可以用mtools 来实现管理,并且也可以用Android SDK 自带的如下命令(这个命令在linux 下面也可以用)实现。

  1. adb push local_file sdcard/remote_file 

在执行完上面的命令后,需要执行下面的命令启动Android 模拟器。

  1. emulator -avd avd1 -sdcard card/mycard.img 

如果在Eclipse 开发环境中,可以在“Run Configuration”对话框中设置启动参数。当然,也可以在Preferences 对话框中设置默认启动参数。这样在新建立的Android 工程中就自动加入了装载SD 卡虚拟文件的命令行参数。

在接下来的内容中,将通过一个具体实例的实现过程讲解读取SD 卡中数据的方法。



喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书频道活动讨论群:365934973

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

Linux环境下C编程指南

本书系统地介绍了在Linux平台下用C语言进行程序开发的过程,通过列举大量的程序实例,使读者很快掌握在Linux平台下进行C程序开发的方法和技...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊