【发布时间】:2017-08-29 09:41:32
【问题描述】:
在 android 中,我可以通过以下方式获取手机的可移动外部存储:
for (File f : context.getExternalFilesDirs("/"))
if (Environment.isExternalStorageRemovable(f))
Log.println(Log.DEBUG, "#", f.getAbsolutePath());
但是,这会返回 /storage/8E6A-06FF/Android/data/test.application/files,这不是我想要的,因为我只想要可移动设备的根路径 /storage/8E6A-06FF/。如何获取手机移动存储的根路径?
【问题讨论】:
-
你已经有了那个路径。只需删除以 /Android/.. 开头的多余部分即可
-
@greenapps
getExternalStorageDirectory()返回手机不可移动的主存储,而不是辅助存储。至于删除/Android/,你能确定/Android/会在每部安卓手机的路径中吗? -
是的。我从未见过其他任何东西。
-
Paths.get(path_string).getParent() -
@greenapps 你知道
/storage是否一直存在吗?在这种情况下,我可以使用 while 循环,直到.getParent()返回存储空间。
标签: android android-external-storage