因为最近项目需要,涉及到 SD卡 的读写操作,然而申请
<!-- 读写权限 -->
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
权限只能对 SD卡 进行读操作,而没有写权限,也就是说,Android 在某个版本中对 SD卡 的读写权限进行了限制。后在 StackoverFlow 上找到一篇相关问答,解了心中疑惑。在此,对该问答进行翻译并附上相关 Demo,已做备忘。
原文地址:How to use the new SD card access API presented for Android 5.0 (Lollipop)?
问
背景
在 Android 4.4(KitKat) 中,Google 对 SD卡 的访问已经做了严格的限制。
在 Android 5.0(Lollipop) 中,开发者可以使用 新API 要求用户对某个指定的文件夹进行访问授权,详见:Android 4.4 Samsung Galaxy s4 external sd card is now read only, Remove or option to edit non app files.(译者注:开头挺搞笑的,都是开发者吐槽 Google 对 SD卡 做了限制)
问题
上述文章中有两个链接:
- 此链接中代码看起来更像是内部示例(可能会在以后的 API Demo 中出现),但是真的很难理解这部分代码的意图。