Android 10适配详解:ScopedStorage与文件权限策略
97 浏览量
更新于2024-09-09
收藏 225KB PDF 举报
本文档是一篇关于Android 10适配攻略的总结,重点介绍了针对Android 10新特性进行应用程序开发所需的注意事项。文章开始强调了适配Android 10前,开发者需要将项目targetSdkVersion设置为29,这是升级到新版本的基本要求。
文章的核心内容围绕Android 10引入的ScopedStorage(分区存储)机制展开。在Android 10之前,应用通常需要请求存储权限才能读写文件,这导致了存储空间的混乱。为解决这个问题,Android 10通过区分内部存储(如getFilesDir()路径)和外部存储(getExternalStorageDirectory()路径)的行为,引入了新的规则:
1. 内部存储不再需要单独的权限,且卸载应用时会自动清理文件。然而,外部存储被划分为三个区域:
- 特定目录:使用getExternalFilesDir()或getExternalCacheDir()获取,无需权限,卸载应用后会被清除。
- 媒体文件(如照片、视频、音频):通过MediaStore访问,需READ_EXTERNAL_STORAGE权限,且不适用ScopedStorage规则。
- 其他目录:使用Storage Access Framework (SAF)进行访问,此时即使拥有存储权限也可能无法直接读写。
为了适配Android 10,开发人员需要注意以下几点:
- 在AndroidManifest.xml中添加android:requestLegacyExternalStorage="true",这是一种临时解决方案,但并不是长久之计,因为Google建议尽快移除对Legacy External Storage的支持。
- 了解并处理ScopedStorage带来的文件权限变化,可能需要重新设计数据存储策略,确保数据的安全性和管理性。
- 对MediaStore和SAF的正确使用,尤其是当涉及到媒体文件和跨应用访问时,需要正确申请和管理权限。
- 测试应用在Android 10设备上的行为,确保兼容性和用户体验。
这篇攻略对于正在或计划更新Android 10应用的开发者来说,提供了宝贵的指导,帮助他们理解和应对新版本带来的挑战,提升应用程序在Android 10环境下的表现和用户满意度。
2021-01-04 上传
2023-06-11 上传
2023-05-19 上传
2023-07-27 上传
2023-07-28 上传
2023-06-09 上传
2024-02-06 上传
2024-03-01 上传
weixin_38501363
- 粉丝: 2
- 资源: 901
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦