【问题标题】:Is the storage location "storage" for all Android devices and versions fixed?所有 Android 设备和版本的存储位置“存储”是否已修复?
【发布时间】:2015-06-13 12:14:48
【问题描述】:

我想知道:

/storage/sdcard0//storage/sdcard1/ 的所有 android 设备和可用版本的目录位置并保持不变? 也就是说,我可以在我的代码中使用这个/storage/... 吗?

我想确定这是所有版本的根是否可用。 !

例如:

File root = new File("/storage/sdcard1");
// or
File root = new File("/storage/sdcard0"); // if UNMOUNTED , i know ..

//File[] files = root.listFiles();
//for(File singlFile: files){
    // ...      
//}

这段代码正确吗?适用于所有安卓移动设备? 感谢您的帮助。

【问题讨论】:

  • 它不会工作。不同版本、不同厂商的android存储根不同。
  • @Chandrakanth 我可以从 api 1api 21 使用 /storage/.. 吗?对吗?
  • 不,您不能那样使用...请参阅下面的答案
  • @Chandrakanth 谢谢人

标签: android storage android-sdcard


【解决方案1】:

/storage/sdcard0/ 和 /storage/sdcard1/ 目录位置,适用于所有可用且未更改的 Android 设备和版本?

绝对不是。对于同一设备上的不同用户,它们甚至都不相同。

从不硬编码根路径。始终使用ContextEnvironment 等上的方法来获取根路径。

【讨论】:

  • 谢谢哥们,所以我如何使用ContextEnvironment 来获取内部存储或手机内存位置目录 --> /storage/sdcard1 ??
  • @grizzly:我不知道“手机记忆位置目录”是什么意思。就 Android SDK 而言,您对存储的选择是 internal storageexternal storage 和(在非常有限的范围内)removable storage。在许多情况下,最好不要直接使用文件系统,而是使用提供程序(例如,MediaStore)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-25
  • 1970-01-01
  • 2016-02-12
  • 1970-01-01
相关资源
最近更新 更多