1.8 KiB
1.8 KiB
1. 文件管理
1.1. 概述
IPC产品的文件管理模块。抓拍的图片或者视频的保存/删除/查询等操作通过该模块实现。
1.2. 数据库管理设计
考虑到拓展性,使用数据库salite3对文件的各种属性进行管理。
1.2.1. 数据库表
文件保存表
key | 路径 | 时间 | 类型 | 大小 | 状态 |
---|---|---|---|---|---|
数据库键值 | 文件保存的相对路径 | 录制的时间 可能不准确 |
录制的类型: PIR 手动 手机app 定时 |
文件大小 | 枚举: 正在拍摄 已完成拍摄 待上传 正在上传 上传完成 |
如何应对未知的数据表临加
解决基于一个已存在的数据库文件,临加数据元素。
拍摄流程:
- 拍摄前先创建数据,获取唯一自增键值;
- 拍摄结束后,更新数据状态为已完成;
状态使用TEXT数据类型,如果使用枚举,可能会存在枚举值变化导致的bug。
1.3. 文件夹管理
目录树
DCIM/ // 根目录
├── picture // 图片目录
│ └── 2024 // 年份记录
│ ├── 01 // 月份记录
│ │ └── xxx.jpg
│ └── 02
└── video // 视频目录
└── 2024 // 年份记录
└── 01 // 月份记录
└── xxx.MP4
野数据
插入一些非软件保存文件的sd卡时,忽略这些数据(不做任何处理)。
1.4. 文件命名规则
文件类型
- PIR抓拍;
- 定时抓拍;
- 手动抓拍;
文件名命名规则
基于文件保存表的数据元素:类型+时间+key