android - 如何访问手机的外置Micro SD卡?

标签 android eclipse

有谁知道如何获取手机的SD卡?

我知道有人会告诉我它的 getExternalStorageDirectory()Environment.getExternalStoragePublicDirectory()

但不幸的是,它并不总是指向所有型号的外部 SD 卡。例如,我在三星的一种型号上试过,它工作正常,但另一种不行,LG 不行。而且根据文档,它也不总是外部 SD 卡。

在这里,

*"不要被这里的"外部"这个词搞糊涂了。

这个目录最好被认为是media/shared 存储。它是一个文件系统,可以保存相对大量的数据,并且在所有应用程序之间共享(不强制执行权限)。

传统上这是一张 SD 卡,但它也可以作为设备中的内置存储实现,与 protected 内部存储不同,并且可以作为文件系统安装在计算机上。"*

在我的应用程序中,我希望用户仅使用 SD 卡。

我该如何克服这个问题?

最佳答案

查看 CommonsWare 对同一主题的回答 https://stackoverflow.com/a/5695129/582571

他提到我们无法区分手机的内置外部存储和移动外部存储。

但由 Aleadam 回答 https://stackoverflow.com/a/6049446/582571我们只能使用 isExternalStorageRemovable() 函数检查外部存储是否可移动。

我希望你会明白。

关于android - 如何访问手机的外置Micro SD卡?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11716448/

相关文章:

android - 如何添加像 Retrica 这样的相机预览实时滤镜?

java - Android OpenGL ES - 我无法使 gluLookAt/gluPerspective 工作

android - 创建 ArrayAdapter 时出现 NullPointerException

android - 如何使用 GCM 通知同步

java - MyEclipse 10 无法启动 "Java was started but returned exit code 13"

android - 使用monkeytalk测试android应用程序,录音按钮被禁用

android - 异步任务中的空指针错误

eclipse - 禁用 Eclipse 警告 "Projects must be referenced by an EAR or a WAR to use classpath publish/export dependencies..."?

java - 如何将常规jar添加到插件中(ClassNotFoundException,NoClassDefFoundError)?

java - Eclipse Indigo 未达到断点