Android热更知识点

Android 10/11 存储适配

2021-03-02  本文已影响0人  全球顶尖伪极客

参考文章:Android 存储基础
Android 10、11 存储完全适配(上)
Android 10、11 存储完全适配(下)

小记:

image.png

适配核心

分区存储是核心,App自身产生的文件应该存放在自己的目录下。这两个目录本App无需申请访问权限即可访问,其它App无法访问本App的目录。
  • /sdcard/Android/data/packagename/ App自身的自带外部存储-私有目录
  • /data/data/packagename/ App自身的内部存储
适配共享存储

共享存储空间里的文件需要通过Uri构造输入输出流访问。Uri获取方式有两种:MediaStoreSAF

适配其它目录

Android 11上需要申请访问所有文件的权限。

具体做法

第一步
   <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
   <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />
android:requestLegacyExternalStorage="true"
第二步

如果需要访问共享存储空间,则判断运行设备版本是否大于等于 ·Android6.0·。

第三步

如果想要做文件管理器、病毒扫描管理器等功能。则判断运行设备版本是否大于等于 Android 6.0,若是则需要先申请普通的动态存储权限。若运行设备版本为Android 10.0,则可以直接通过路径访问/sdcard/目录下文件(因为禁用了分区存储);若运行设备版本为Android 11.0,则需要申请MANAGE_EXTERNAL_STORAGE权限。

上一篇下一篇

猜你喜欢

热点阅读