/ sdcard/emulated/0和/ sdcard之间的差异

gio*_*ozh 13 directory android android-external-storage

我对一个奇怪的问题很生气.如果我在我的代码中创建一个文件夹作为

directory_path = Environment.getExternalStorageDirectory()
                + "/" + context.getResources().getString(R.string.app_name);

directory = new File(directory_path);
if (!directory.exists()) {
    directory.mkdirs();
}
Run Code Online (Sandbox Code Playgroud)

在/ sdcard /中创建一个新文件夹.如果我尝试在logcat directory_path变量上打印,路径是不同的:/ storage/emulated/0 /如果我去那个路径,我找到了另一个与/ sdcard /上创建的文件夹同名的文件夹.这对我来说是一个问题,因为当我尝试将一些数据写入该文件夹时,everithing进入/ storage/emulated/0中的那个,而另一个(我想要使用的文件夹)保持为空.为什么?

Kai*_*Kai 4

您是否尝试过读回数据?/storage/emulated/0/ 是 JB 中引入的新路径,用于支持平板电脑上的多个用户。但只要您使用Environment.getExternalStorageDirectory()它访问外部文件,它们的实际位置并不重要。

以下是一些附加信息:https://android.stackexchange.com/questions/35541/why-did-sdcard-turn-into-sdcard-0-with-4-2

  • /storage/emulated/0 下的文件夹_是_您应该使用的存储。 (2认同)