无法在Android模拟器中写入SD卡

时间:2012-02-19 18:28:46

标签: android permissions android-emulator android-sdcard

我在AndroidManifest.xml中添加了这一行:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

但是,当我运行代码写入SD卡时,我收到此错误:

02-19 13:24:46.760: E/CameraTest(598): /mnt/sdcard/image.jpg: open failed: EACCES (Permission denied)

如何解决这个问题?

编辑:我正在使用添加了SDCard的Android模拟器。

EDIT-2:我知道现在的问题是:我调用了函数Environment.getExternalStorageState()并且我被“删除”了。任何人都知道如何解决此问题并使状态为MEDIA_MOUNTED

谢谢!

4 个答案:

答案 0 :(得分:7)

好的,所以我解决了这个问题。这是我在安装SD卡时遇到的问题,并且android不允许在路径中使用空格!

这是一个很好的程序(如果也使用了eclipse):http://www.brighthub.com/mobile/google-android/articles/33240.aspx

注意:如果路径中有空格,请将sdcard图像文件移动到其他位置,然后使用sdcard运行模拟器命令,一切都应该正常工作!

答案 1 :(得分:3)

可能比这更简单。我错过了配置模拟器,以便它有一张SD卡。一旦我在设备中添加了SD卡,一切都进展顺利。

此致 纳斯

答案 2 :(得分:2)

我注意到如果您使用的是Android 6.0模拟器,Android可能会出现此问题,Android为(Marshmallow)添加了新的权限模型。

技巧:如果您的目标是22或更低版本,您的应用程序将在安装时请求所有权限,就像在Marshmallow下运行操作系统的任何设备上一样

答案 3 :(得分:1)

我清除了缓存,无论我使用哪个应用程序尝试分享图片(Pixlr),都很好。