如何获取Android存储位置

时间:2019-10-10 18:41:19

标签: android android-studio

我正在努力解决一些本应简单的问题,这是获取存储目录路径的可怕问题,无论是内部还是外部(SD卡或OTG设备)。

我期待一个简单的调用,例如getExternalStorageDirectory()或类似的东西,但令我惊讶的是,我发现我不得不做很多破解和变通办法,以确保我的功能可以与所有OEM和不同版本的Android一起使用

我在这里找到了使用以下三个环境变量的解决方案

val rawExternalStorage = System.getenv(“ EXTERNAL_STORAGE”)

val rawSecondaryStoragesStr = System.getenv(“ SECONDARY_STORAGE”)

val rawEmulatedStorageTarget = System.getenv(“ EMULATED_STORAGE_TARGET”)

我有点明白第一个和第二个变量是什么-但是对于Android,永远不要确定任何事情! :D-

但是我绝对不知道第三个变量是什么或它做什么,有人可以向我解释它是什么以及我应该如何使用它?

1 个答案:

答案 0 :(得分:0)

在需要的类的 OnCreate 上调用此方法。

private String DB_PATH = context.getFilesDir().getAbsolutePath();

获取绝对路径