0

我正在开发一个 android 应用程序,我正在尝试检查 SD 卡是否存在以执行特定任务。我正在使用以下链接中的代码来检查它。

以编程方式检查 SD 卡是否可用

问题是,代码在我的许多手机上都可以正常工作,但在我的 Galaxy S 上,即使我没有 SD 卡,isSDcardpresent 始终是正确的。

不知道是什么问题,求助!谢谢!

4

1 回答 1

4

总是有一个“外部”存储目录,即使对于没有 SD 卡的设备,请参阅getExternalStorageDirectory

注意:不要被这里的“外部”这个词弄糊涂了。最好将此目录视为媒体/共享存储。它是一个文件系统,可以保存相对大量的数据,并且在所有应用程序之间共享(不强制执行权限)。传统上这是一张 SD 卡,但它也可以作为设备中的内置存储实现,与受保护的内部存储不同,并且可以作为文件系统安装在计算机上。

它也可能不是真正的 SD 卡,请参阅数据存储指南

使用内部存储分区作为外部存储的设备也可能提供 SD 卡插槽。在这种情况下,SD 卡不是外部存储的一部分,您的应用无法访问它(额外的存储仅用于系统扫描的用户提供的媒体)。

我认为问题是“存在 SD 卡吗?” 应翻译为“共享目录是否可用?”。

于 2013-08-22T14:01:12.153 回答