有谁知道如何获取手机的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/