【Android】存储读取权限管理理解和api 调研报告

背景

工作和学习需要了解android 权限管理和 对应的api 调用逻辑。

学习

在这里插入图片描述

内部路径 不用权限

在这里插入图片描述

/data/data/应用包名
在这里插入图片描述

相关API Context 类

getCacheDir 缓存路径

在这里插入图片描述

getCodeCacheDir

在这里插入图片描述
示意路径
在这里插入图片描述

getFilesDir

内部文件 文件路径
在这里插入图片描述
在这里插入图片描述

fileList (files 下的所有文件名)

在这里插入图片描述
相关的openFileInputopenFileOutput就是直接在files文件夹读写某个文件:
在这里插入图片描述

getDataDir 不常用

在这里插入图片描述

外部存储

公共目录 Environment 类 - 需要权限在这里插入图片描述

需要在manifest xml 配置和request Permission 哦~

getExternalStorageDirectory

在这里插入图片描述
注意这个不能保证该接口有效,得调用上述的state 看看状态。获取的路径就是如下:
在这里插入图片描述

getExternalStoragePublicDirectory

具体的对应文件夹 在这里插入图片描述

例如:

//输出:/storage/emulated/0/Music

Log.d("DaMai",Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MUSIC).getPath();

私有目录 Context类 - 不需要权限

在这里插入图片描述
路径:私有目录地址:/storage/emulated/0/Android/data/应用包名
在这里插入图片描述

getExternalCacheDir

在这里插入图片描述

getExternalFilesDir

在这里插入图片描述

        File file = context.getExternalFilesDir(Environment.DIRECTORY_PICTURES).getAbsoluteFile();

在这里插入图片描述
使用方式和内部存储的差不多,不过路径不一样罢了。

注意版本权限

·WRITE_EXTERNAL_STORAGE在android11 之后就不再支持了。。
在这里插入图片描述
高版本中使用存储权限可以 用如下的配置:
在这里插入图片描述

READ_MEDIA_AUDIO,
READ_MEDIA_IMAGES,
READ_MEDIA_VIDEO

文章参考

  • 19
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值