鸿蒙综合讨论/rawfile 资源组织

rawfile 资源组织

rawfile 是应用随包分发只读资源的标准通道:字体、翻译、图标、默认配置、种子数据。这篇讲组织方式与使用纪律。

▍通道特性
rawfile 目录里的文件打包时原样保留(不编译不改名),运行时经资源管理接口以流方式读取。两个特性决定用法:只读(要可写的拷出去);路径式访问(目录结构自由组织)。

▍组织方式
按用途顶层分组:字体、翻译、图标、默认配置、数据种子。命名规范:全小写加下划线,避免大小写敏感差异(打包与读取两侧对大小写的处理不一致是真实踩过的坑——开发机上正常,装机读不到);避免特殊字符与超长路径。版本与来源登记:每组资源记来源与版本(哪个字体、哪个版本的数据),升级与合规追溯靠它。

▍首启部署模式
需要修改或需要随机访问(数据库、字体索引)的资源,首启从 rawfile 拷到数据目录再使用。部署的纪律:优先级分层(首帧必需、随后补载);部署状态记录(中断后可续,不全量重来);完整性校验(拷完校验,防半份数据)。只读使用的资源直接从 rawfile 流式读,别拷——省时间省空间(这条在启动性能篇有展开)。

▍访问的封装
统一封装资源访问层:应用代码不直接拼 rawfile 路径,走资源接口(按逻辑名取)。好处:路径变更一处改;缓存与校验策略集中;排查资源问题时一层日志全覆盖。

▍常见坑位
一,隐藏文件:点开头的文件在部分打包通道被过滤,资源别用隐藏文件命名。二,中文与空格路径:部分通道对非 ASCII 名处理不稳,资源名用 ASCII。三,大文件:rawfile 里的超大文件(模型、视频)考虑按需下载而非全量打包,包体积预算篇有配合策略。

▍验收
装机后资源全量可读(遍历校验)、首启部署日志完整、升级时资源版本迁移正确。

免费无广告的安装包可以在官网下载体验。
楼主 7 天前
想参与讨论?登录 或 30 秒注册。