Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/210.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android中的存储目录_Android - Fatal编程技术网

android中的存储目录

android中的存储目录,android,Android,我尝试使用Environment.getExternalStorageDirectory()获取存储根目录,并在其中创建目录: bitmapsDir = new File(Environment.getExternalStorageDirectory() + File.separator + "bitmaps"); bitmapsDir.mkdirs(); 所有这些都会毫无例外地执行,路径为: /storage/embedded/0/位图 当我试图在该目录中

我尝试使用
Environment.getExternalStorageDirectory()
获取存储根目录,并在其中创建目录:

bitmapsDir = new  File(Environment.getExternalStorageDirectory() +                  File.separator + "bitmaps");
bitmapsDir.mkdirs();
所有这些都会毫无例外地执行,路径为:
/storage/embedded/0/位图

当我试图在该目录中创建任何文件时,我得到一个
enoint/没有这样的文件或目录错误。

当我使用

bitmapsDir = new File(this.getExternalFilesDir(null) +
                    File.separator + "bitmaps");
bitmapsDir = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM) +
 File.separator + "bitmaps");

其中“this”是当前活动,它起作用,路径为:
/storage/emulated/0/Android/data/belsoft.mirror/files/bitmap

当路径中的其他路径成功时,为什么尝试使用/storage/emulated/0失败

如果我使用

bitmapsDir = new File(this.getExternalFilesDir(null) +
                    File.separator + "bitmaps");
bitmapsDir = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM) +
 File.separator + "bitmaps");

路径是
/storage/emulator/0/DCIM/bitmaps
,使用enoint失败

我不知道为什么这些路径会失败,MKDIR上也不例外

我在Windows7上使用Android Studio 2.3.1和三星Galaxy Tab 100

我的清单包含:

bitmapsDir.mkdirs()。仅当目录尚不存在时调用mkdirs。并检查返回值,因为它可能无法创建目录。请修改你的代码。哪个Android版本?应用程序不需要对内部getExternalFilesDir()的权限。正如您所看到的,仅在外部。
Environment.getExternalStorageState()
返回“mounted”。
mkdirs()
在故障情况下返回false,表示未创建,并且目录事先不存在。设备上显示Android版本6.0.1.
,mkdirs上也没有例外。
。实际上,它只返回一个布尔值,以指示是否创建了目录。调整你的代码,但同时你也发现了你在安卓6上忘记的东西。因为你的问题几乎每天都在这里被报道。读几页就行了。