我当前在开发APP和使用外部SD卡时遇到一些问题。
第一个问题是我检查是否安装了SD卡。即使没有插入SD卡,此函数也会返回true。我已经使用/尝试过以下代码:
来自developer.android.com
每个Android兼容设备都支持共享"外部存储"您可以用来保存文件。这可以是可移动存储介质(例如SD卡)或内部(不可移动)存储。保存到外部存储器的文件是世界可读的,当用户启用USB海量存储器在计算机上传输文件时,用户可以对其进行修改。
也许这是一个问题?
我使用的是LG L5(E610)
我已经为清单文件添加了正确的权限。
我的其他问题可能与此issue
有关非常感谢任何帮助。谢谢。
答案 0 :(得分:6)
你说:
第一个问题是我检查是否安装了SD卡。即使没有插入SD卡,此函数也会返回true。
我认为你偶然发现需要花费一些时间才能掌握的东西,因为它根本不是明确的。
在Android中你会发现两种内存:
您会在野外找到3种设备:
根据你的说法,我认为你是第三种设备。因此,您的物理SD卡将在这种路径中找到:/mnt/sdcard/external_sd/
。遗憾的是,这是特定于设备的,我不认为Android API中有一些东西可以获得这条路径。
另外,请记住,自Android 3.X起,我们不再需要“挂载”这个共享内存了。所以你的共享内存将永远存在于Android,因为我们现在正在使用MTP协议。
这就是为什么isExternalStorageAvailable()返回true,即使你的sdcard被删除了。
答案 1 :(得分:0)
解决了问题,是自己的问题。
感谢大家的帮助..