android - 将文件写入 SD 卡而不是 USB 存储

标签 android

我正在开发一个需要将文件写入SD卡的应用程序。我正在使用 GetExternalStoragePublicDirectory() 来确定要写入的目录。

我正在使用两部手机进行开发。在运行 Android 4.0.4( Ice Cream Sandwich )的 Google Nexus S 上,它返回 SD 卡上的目录。然而,在运行 Android 2.3.5 的三星 Exhibit 2 上,它直接写入手机上的 USB 存储设备。

有没有办法强制SD卡?

编辑:

我发现 getExternalStoragePublicDirectory() 和 getExternalStorageDirectory() 总是返回“/mnt/sdcard/”。这实际上不是 SD 卡的安装位置。在 Samsung Exhibit 2 上,这是 USB 存储位置。卡安装位置是“/mnt/sdcard/external_sd”。有没有办法返回这个实际的 sd 位置?

我看到相机和其他应用程序已经找到了方法。相机应用程序有一个“存储”设置选项“电话”和“存储卡”。如果指定为“memory card”,则图片实际存储在sd卡上。

最佳答案

Is there a way to return this actual sd location?

不,抱歉,不在当前的 Android SDK 中。

I see that the camera and other apps have found a way to do it.

大多数情况下,它们要么是由设备制造商编写的,要么是通过 MediaStore 读取信息,这应该为这两个来源编制索引。

关于android - 将文件写入 SD 卡而不是 USB 存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10149402/

相关文章:

java - Flutter:如何在 Apple M1 芯片中安装 Flutter 及其所需的 SDK 元素?

java - 我想获取联系人姓名和电话号码,但我的代码只打印联系人姓名,所以我怎样才能获取号码

android - Flurry Analytics 在 Android 模拟器中为 "Run"时崩溃,但在模拟器中为 "Debugged"时不会崩溃

android - 在eclipse中重命名Android项目的包和版本名称

android - EditText 在按下后退按钮后返回先前输入的数据

java - 在 Android 上嵌入 Rhino 的问题

android - 如何创建滑动布局,如主 android 菜单?

java - 如何在 TextView 中查找可见文本

android - api levels 11以下的action bar如何实现?

android - 如何在 Android 中的图片上写文字并保存?