【发布时间】:2016-10-18 14:25:36
【问题描述】:
我的设备是华为NEM-TL100H,运行Android 6.0。当我使用流动代码获取sdcard路径时:
File sdcard = Environment.getExternalStorageDirectory();
但它会返回
/storage/E635-0F94/
我确定我的项目中有读写外部存储权限的请求,并且目标sdk版本是22。
有人遇到同样的问题吗?
我期望它会返回 /storage/emulated/legacy/ 或 /storage/emulated/0/ 这样的路径,但不会返回 /storage/E635-0F94/
事实上,在我 adb shell 进入设备后, ls /storage 文件夹中列出了 4 个子文件夹:E635-0F94、emulated、sdcard0、sdcard1。 E635-0F94 是 sdcard0 还是 sdcard1 的另一个链接?
【问题讨论】:
-
您的问题到底是什么?它叫
getExternalStorageDirectory而不是getExternalStorageDirectoryHumanReadableName。 -
“当我获得 sdcard 路径时”——该代码与大多数 Android 设备上的 SD 卡无关。 External storage 不是 removable storage。
-
/storage/E635-0F94/这是微型 SD 卡的完美路径。只是它是由该函数返回用于外部存储的。 -
@greenapps 在我看来,它会返回类似 /storage/emulated/legacy/ 或 /storage/emulated/0/ 的路径,但不会返回 /storage/E635-0F94 。
标签: android