从API级别8开始,Android似乎已经重新定义了什么是“外部”存储。通过阅读随附于文档的http://developer.android.com/reference/android/os/Environment.html,getExternalStorageDirectory我看到了这样的评论:“不要在这里被'external'混淆。此目录可以更好被认为是媒体/共享存储...在具有多个“外部”存储目录...的设备中,该目录表示用户将与之交互的“主要”外部存储。”我的应用程序将文件写入到所获得的路径getExternalStorageDirectory,而我要求用户选择写入其可移动SD卡的选项。我一直以为getExternalStorageDirectory返回了可移动SD卡的路径,但这不再是事实。如何访问此SD卡的路径?
3 回答
米脂
TA贡献1836条经验 获得超3个赞
为确保您正在访问sd卡,可以使用:
System.getenv(“ SECONDARY_STORAGE”)
但是-请记住-即使您在清单中设置了所有正确的权限-允许第三方应用在您的外部卡上写入的唯一位置是“他们自己的目录”(即/ sdcard / Android / data /)
尝试写到其他任何地方,您将得到异常:EACCES(权限被拒绝)
- 3 回答
- 0 关注
- 1585 浏览
添加回答
举报
0/150
提交
取消