修改模拟器中sdcard权限

假如出现模拟器中的sdcard只有可读权限时,如以下信息:
# pwd
pwd
/mnt/sdcard
# mkdir test
mkdir test
mkdir failed for test, Read-only file system

或者编译代码时出现:
/System.err( 1093): java.io.FileNotFoundException: /mnt/sdcard/DownloadApk/XXX.apk (Permission denied)
/System.err( 1093):    at org.apache.harmony.luni.platform.OSFileSystem.open(Native Method)
/System.err( 1093):    at dalvik.system.BlockGuard$WrappedFileSystem.open(BlockGuard.java:232)
/System.err( 1093):    at java.io.FileOutputStream.<init>(FileOutputStream.java:94)
/System.err( 1093):    at java.io.FileOutputStream.<init>(FileOutputStream.java:66)

则可能是模拟器没有开通sdcard support的功能。
只需进入AVD Manager界面,并选中将用的AVD,编辑其属性,即在Hardware选项中new一个“SD Card support”选项即可。
并adb shell进入命令行
修改sdcard目录下的读写权限:
chmod 075 /mnt/sdcard (不要直接用777,不能成功执行的)

你可能感兴趣的:(sdcard)