我正在开发一个 Android 应用程序,我正在尝试检查 SD 卡是否存在或不执行特定任务。我正在使用下面链接中的代码来检查它。
以编程方式检查 SD 卡是否可用 https://stackoverflow.com/questions/7429228/check-whether-the-sd-card-is-available-or-not-programatically
问题是,该代码在我的许多手机上运行良好,但在我的 Galaxy S 上,即使我没有 SD 卡,isSDcardpresent 也始终为 true。
不知道是什么问题,请帮忙!谢谢!
即使对于没有 SD 卡的设备,也始终有一个“外部”存储目录,
看获取外部存储目录 https://developer.android.com/reference/android/os/Environment.html#getExternalStorageDirectory%28%29 :
注意:不要对这里的“外部”一词感到困惑。这个目录
可以更好地将其视为媒体/共享存储。它是一个文件系统
可以容纳相对大量的数据,并且可以在多个系统之间共享
所有应用程序(不强制执行权限)。传统上这是
SD 卡,但也可以作为内置存储器实现
设备与受保护的内部存储不同,并且可以
作为文件系统安装在计算机上。
也可能是not是真正的SD卡,请参阅数据存储指南 https://developer.android.com/guide/topics/data/data-storage.html :
设备可能使用内部存储的分区
对于外部存储,还可以提供SD卡插槽。在这种情况下,
SD 卡不是外部存储的一部分,您的应用程序无法
访问它(额外的存储空间仅用于用户提供的媒体
系统扫描)。
我认为问题是“SD 卡存在吗?”应翻译为“共享目录可用吗?”。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)