以前项目过程中需要得到到外部SD卡的路径,
Environment.getExternalStorageDirectory()得到的所谓的外部SD卡路径,其实还是手机自带的SD卡的路径,而不是用户自己插入的SD卡的路径,要获取自己插入android设备的SD卡,最后还是用的反射
Class.forName("android.os.storage.StorageVolume")
通过判断该路径指向的设备是否是 isRemovable,来获取真正的插入的外部SD卡路径。
当初查的解决办法的文章没有保存,又搜索了一下,原理上应该和下面这个博文的方法一样(感谢大神)
https://www.jianshu.com/p/6355a697abfb
不过记得刚开始用android4.x时Environment.getExternalStorageDirectory()得到是真正用户插入的SD卡的路径,忘记什么时候开始不行了的。