我正在开发一个需要将文件写入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/