安卓写入SD卡的路径:
4.0以后的安卓系统有分内置SD卡(内部闪存)和外置SD卡。/sdcard和/mnt/sdcard目录仍存在,以和老版本兼容,但它是指向内置SD卡的。而老版本安卓是指向外置SD卡的。
必须加入权限才行。
一、加入这句:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
在安装APP时,会提示:
修改或删除您的USB存储设备中的内容
测试对受保护存储空间的访问权限
与“Environment.getExternalStorageDirectory().getPath()”这语句无关
二、加入这句:
<uses-permission android:name="android.permission.WRITE_MEDIA_STORAGE" />
eclipse出错:
Description Resource
Permission is only granted to system apps AndroidManifest.xml
三、所以只用这个android.permission.WRITE_EXTERNAL_STORAGE权限,测试,可以在内置SD卡,或外置SD卡上写入文件!!
写入的目的地,如果是硬编码(hardcode) “/sdcard/1.txt”或者“/mnt/sdcard/1.txt”,则是写入到内置SD卡中。
如果是用str=Environment.getExternalStorageDirectory().getPath(); str+="/1.txt";,则是写入到外置SD卡中,注意需加一个/号。(需import android.os.Environment;)
写入外置SD卡时,最好检测一下SD卡的状态是否存在。
如果手机硬件无法安装外置SD卡,只有内置SD卡,则Environment.getExternalStorageDirectory().getPath()得到的路径就是内置SD卡的路径,与“/mnt/sdcard”是一样的。
文章评论(0条评论)
登录后参与讨论