我正在尝试构建一个使用扩展文件的应用。从Android文档中,似乎Environment.getExternalStorageDirectory
是访问这些文件位置的正确方法。但是,当我调试我的应用程序时,这会返回/storage/emulated/0
,但File.exists()
检查失败,应用程序无法找到此目录。我已阅读了很多帖子,但我仍然对正在发生的事情感到困惑。
有人建议这是一个虚拟目录,当我在文件管理器中查看时,该目录会映射到确实存在的物理路径/mnt/shell/emulated/0
。
其他人建议在manifest.xml中需要读/写访问权限,但我也尝试添加<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
而没有运气。
发生了什么事?我正在使用带有GenyMotion的Android Studio来调试我的应用程序。虚拟设备是Sony Xperia Z - 4.3 - API 18。