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