前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Android 文件管理】应用可访问的存储空间 ( 存储空间分类 | 存储空间访问权限 | 分区存储 )

【Android 文件管理】应用可访问的存储空间 ( 存储空间分类 | 存储空间访问权限 | 分区存储 )

作者头像
韩曙亮
发布2023-03-29 10:20:52
2.3K0
发布2023-03-29 10:20:52
举报
文章被收录于专栏:韩曙亮的移动开发专栏

文章目录

一、存储空间分类


在 Android 9( API 级别 28 ) 及以下版本中 , Android 文件存储空间分为两类 ,

  • 内部存储空间
  • 外部存储空间

内部存储空间的可靠性高于外部存储空间 ;

在 Android 10( API 级别 29 ) 及以上版本中 , 应用只能访问应用的 专属存储空间 和 共享存储 中的文件 , 不能方位外置存储空间的其它文件了 ;

专属存储空间指的是 应用内部存储空间 和 外置存储中分配给应用的专属目录 ;

应用内部存储空间 放置保密性较高 , 体积较小的文件 ;

共享存储 指的是本应用与其它应用共享的存储空间 , 包括媒体 , 文档 , 下载 等目录 ;

二、存储空间访问权限


内部存储空间访问不需要权限 ;

在 Android 9( API 级别28 ) 及以下版本中 访问外部存储需要使用 READ_EXTERNAL_STORAGE 和 WRITE_EXTERNAL_STORAGE 权限 ;

在 Android 10( API 级别 29 ) 及以上版本中 , 只能方位特定的目录 , 如应用专属目录 , 公共目录 , 不需要权限 , 其它外置存储空间的目录 , 无法访问 ;

三、分区存储


在 Android 9( API 级别 28 ) 及以下版本中 , 开发者可以任意在外置存储目录中创建文件 , 进行任何读写操作 , 并不会很规范的管理外置存储目录中的文件 , 卸载后 , 还遗留大量垃圾文件在外置存储空间中 ; ( 说的就是我 o( ̄︶ ̄)o ) ;

在 Android 10 中开始引入分区存储 , 以后外置的存储空间不能随便乱用了 , 在外置存储空间中写入文件 , 卸载后系统会帮你删除相关文件 ;

关于分区存储 :

  • 目标平台为 Android 9( API 级别 28 ) 及以下版本 , 不会启用分区存储 ;
  • 目标平台为 Android 10( API 级别 29 ) 及以上版本 , 会自动开启分区存储 , 这时候需要进行兼容开发 ;

一旦启用了分区存储 , 就无法访问 SD 卡中创建的目录或文件 , 只能访问外部存储空间的应用专属目录 和 公共目录 ;

目标平台指的是在 Android 工程中 Module 下的 build.gradle 中配置的 targetSdkVersion 参数 ;

本博客中暂时不引入分区存储 ;

四、相关文档资料


Android 文件处理参考文档 :

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-04-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • 一、存储空间分类
  • 二、存储空间访问权限
  • 三、分区存储
  • 四、相关文档资料
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档