Android R 存储机制变更

Android R 存储机制变更,第1张

概述AndroidR对于APP读写存储权限做了更细致限制,之前的 READ_EXTERNAL_STORAGE/WRITE_EXTERNAL_STORAGE 权限可以访问位于外部存储空间中应用专属目录之外的任何文件。现在新增 MANAGE_EXTERNAL_STORAGE 权限,只有申请这个权限后,才能访问管理文件。例如在sdcard目录下创建文

AndroID R 对于APP读写存储权限做了更细致限制,之前的 READ_EXTERNAL_STORAGE/WRITE_EXTERNAL_STORAGE 权限可以访问位于外部存储空间中@L_403_0@之外的任何文件。现在新增 MANAGE_EXTERNAL_STORAGE 权限,只有申请这个权限后,才能访问管理文件。例如在 sdcard 目录下创建文件夹等。

官方从 10 开始引导使用分区存储,使用 sdcard 下原有目录,应用需要创建新的目录去AndroID/下自己的应用目录下,按照系统  androID.os.Environment 定义类型创建不同类型文件目录

图片(包括照片和屏幕截图),存储在 DCIM/ 和 Pictures/ 目录中。系统将这些文件添加到 MediaStore.Images 表格中。视频,存储在 DCIM/MovIEs/ 和 Pictures/ 目录中。系统将这些文件添加到 MediaStore.Video 表格中。音频文件,存储在 Alarms/Audiobooks/Music/Notifications/podcasts/ 和 ringtones/ 目录中,以及位于 Music/ 或 MovIEs/ 目录中的音频播放列表中。系统将这些文件添加到 MediaStore.Audio 表格中。下载的文件,存储在 Download/ 目录中。在搭载 AndroID 10(API 级别 29)及更高版本的设备上,这些文件存储在 MediaStore.Downloads 表格中。此表格在 AndroID 9(API 级别 28)及更低版本中不可用。

这样目的还是为了用户数据保护。对于应用间文件共享,推荐如下做法

如果您需要与其他应用共享特定文件,请使用 FileProvider API。如果您需要向其他应用提供数据,可以使用 ContentProvider。借助内容提供器,您可以完全控制向其他应用提供的读取和写入访问权限。尽管您可以将内容提供器与任何存储媒介一起使用,但它们通常与数据库一起使用。

 

总结

以上是内存溢出为你收集整理的Android R 存储机制变更全部内容,希望文章能够帮你解决Android R 存储机制变更所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1003052.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存