Android上的SD卡位置

时间:2016-08-28 03:50:09

标签: android android-sdcard bluestacks

我正在使用Bluestack来测试我的应用,因为我没有躺着的Androids。我想把一个文件写到SD卡上,但似乎无法弄清楚它的路径。我尝试过以下方法:/mnt/sdcard/ext_sd& /mnt/extSdCard但这些都没有。

1 个答案:

答案 0 :(得分:0)

  

我尝试了以下内容:/mnt/sdcard/ext_sd& /mnt/extSdCard但是   这些都不起作用。

您不应该对路径进行硬编码。因为SD卡存储位置或路径因手机而异。我手机中的SD卡存储位置为/storage/sdcard1

现在回答你的问题,

API级别19 之前,没有官方API method 存储在SD卡中。但是,许多人可以使用非官方的库或API来做到这一点。

正式地,在API级别19(Android版本4.4 - Kitkat)的getExternalFilesDirs类中引入了一种方法(Context)。

File[] getExternalFilesDirs (String type)
  

它返回所有应用程序特定目录的绝对路径   应用程序可以放置的共享/外部存储设备   它拥有的持久文件。这些文件是应用程序的内部文件,   并且通常不会被用户视为媒体。

这意味着,它将返回两种类型存储 - 内存和Micro SD卡的路径。通常,第二个返回路径将是micro SD卡的存储路径(但并非总是如此)。因此,您需要通过使用此方法执行代码来检查它。

您应该在应用源代码中使用此方法来获取SD卡位置,而不是硬编码路径。然后,将文件写入该位置。

如果您想了解有关Android中存储位置或路径的更多信息,请访问my other answer