differences between /sdcard/emulated/0 and /sdcard

人盡茶涼 提交于 2019-12-12 08:21:40

问题


I'm goig to be mad with a strange issue. If i create a folder inside my code as

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

directory = new File(directory_path);
if (!directory.exists()) {
    directory.mkdirs();
}

a new folder is created inside /sdcard/ . If i try to print on logcat directory_path variable, the path is different: /storage/emulated/0/ and if i go to that path, i found another folder with the same name of the one created on /sdcard/ . This is a problem for me because when i try to write some data into that folder, everithing goes in the one on /storage/emulated/0 , and the other one (that is the folder i want use) remain empty. Why?


回答1:


Have you tried reading back the data? /storage/emulated/0/ is the new path introduced in JB to support multiple users on tablet. But as long as you access external files using Environment.getExternalStorageDirectory() it doesn't really matter where they really reside.

Here's some additional info: https://android.stackexchange.com/questions/35541/why-did-sdcard-turn-into-sdcard-0-with-4-2




回答2:


/storage/emulated/0/: to my knowledge, this refers to the "emulated MMC" ("owner part"). Usually this is the internal one. The "0" stands for the user here, "0" is the first user aka device-owner. If you create additional users, this number will increment for each.

/storage/emulated/legacy/ as before, but pointing to the part of the currently working user (for the owner, this would be a symlink to

/storage/emulated/0/). So this path should bring every user to his "part".

/sdcard/: According to a comment by Shywim, this is a symlink to...

/mnt/sdcard (Android < 4.0)

/storage/sdcard0 (Android 4.0+)

For more detail you can visit stackexchange



来源:https://stackoverflow.com/questions/20017468/differences-between-sdcard-emulated-0-and-sdcard

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!