1. Android APP统一存储数据规范
基于Android系统对存储卡访问的各种特性,在充分保证基线的产品交互体验前提下,定义Android APP各业务开发中的可选存储路径,对应存储特性,各自适合存储文件范围和存储路径格式规范。
存储类型 | 根路径 | 特性 | 存储文件范围 | 业务路径格式 |
内置数据分区 | /data/../<packagename>/files/ (对应:Context.getFilesDir()) |
1.APP被安装时系统分配在data分区上的存储路径; 2.APP访问不需要申请权限;APP私有,安全性最高; 3.(非root或非共享UID)其它APP无权访问 4.files和cache的区别:cache存储偏临时性的文件,在系统存储空间紧张时会被系统auto clean,应用设置中“清理缓存”会清理掉cache内文件; 5.APP卸载时或“清理数据”时,此2种路径下的所有文件都会被系统自动清理; |
1.数据文件体积小(KB级别); 2.运行时只能在data区加载的文件(如:动态下载的so库,插件apk或hotfix Dex文件等) 3.安全性要求高的私密性文件; 4.记录方便用户继续使用的历史行为数据,不希望被频繁重置到默认值的数据文件; |
各存储类型根路径下各业务相对路径格式: ./<一级业务>/<子业务>/<子路径>/, 1.APP内各业务统一路径标准后,为了避免业务间冲突,请各业务找基线APP申请和注册<一级业务>,插件的还涉及<子业务>的注册,<子路径>由各业务内部自行分配;但要严格根据存储特性和适合的文件范围选择存储路径;<子业务>和<子路径>是可选的; 2.各一级业务存储路径层级尽量不要超过3级,层次越深,遍历计算各级文件大小和删除时效率越低; 3.示例: <一级业务> 基线:./app <子业务>: < |