【发布时间】:2015-09-03 23:47:10
【问题描述】:
有没有可靠的方法来找出 Android 设备上的外部 SD 卡文件夹? (KitKat 及更高版本)
我的理解是,从 KitKat 开始,您可以使用 getExternalFilesDirs(null) 来获取可用存储列表,包括辅助 SD 卡。
但是在插入了 SD 卡的联想 A3500 平板电脑上,getExternalFilesDirs() 只返回一个条目"/storage/emulated/0/Android/data/<app>/files"。通过文件管理器可以看到"/storage/sdcard0"(内部闪存)和"/storage/sdcard1"(外部SD 卡),但第二个SD 在getExternalFilesDir() 返回的条目列表中不可用。
是否某些制造商决定不通过该标准化 API 导出 SD 文件夹?是否有其他方法可以更好地可靠地在设备上找到额外的存储空间?
设备是搭载 Android 4.4.2 的 Lenovo A3500
【问题讨论】:
-
“我的理解是,从 KitKat 开始,您可以使用 getExternalFilesDirs(null) 获取可用存储列表,包括辅助 SD 卡”——仅适用于搭载 Android 4.4+ 的设备。如果GSMArena 正确,则您的设备附带 Android 4.2.2。在 Android 4.4 之前,开发人员根本无法正式访问可移动媒体。提供从 pre-4.4 升级到 4.4+ 的制造商可以在集成 4.4 有限的可移动媒体支持方面做他们想做的事。
-
看看 System.getenv("SECONDARY_STORAGE");和其他人。
标签: android