Android环境getExternalStorageDirectory方法返回unhuman-readable路径

时间:2016-10-18 14:25:37

标签: android

我的设备是华为NEM-TL100H,运行Android 6.0。当我使用流动的代码获取SD卡路径时:

File sdcard = Environment.getExternalStorageDirectory();

但它返回

/storage/E635-0F94/

我确信读取和写入外部存储权限有请求,目标sdk版本在我的项目中是22。

有没有人遇到同样的问题?

我期望它会返回路径,例如/ storage / emulated / legacy /或/ storage / emulated / 0 /但不是/ storage / E635-0F94 /

实际上,在我将shell添加到设备和ls / storage文件夹之后,列出了4个子文件夹:E635-0F94,模拟,sdcard0,sdcard1。 E635-0F94是否是指向sdcard0或sdcard1的另一个链接?

1 个答案:

答案 0 :(得分:-1)

获取所有数据:

ArrayList<String> filesList = new ArrayList<String>();   
String sd_card = Environment.getExternalStorageDirectory().toString();
file = new File( sd_card ) ;       
File list[] = file.listFiles();
for( int i=0; i< list.length; i++) {
    filesList.add( list[i].getName() );
}

不要忘记在清单中添加权限:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>