目录

压缩解压缩概述

从API版本26.0.0开始支持压缩解压缩模块,为应用提供了数据压缩和解压缩的能力,可用于文件打包分发、减少存储占用、加速网络传输等场景。根据数据来源和处理方式的不同,模块提供了以下三种压缩解压缩方式:

架构原理

如图所示,文件压缩解压缩模块的架构分为以下三层:

采用分层设计,使模块具备良好的扩展性,开发者可以根据实际需求选择合适的压缩解压缩方式。

与相关模块的关系

Basic Services Kit还提供了基于ArkTS的@ohos.zlib (Zip模块),用于文件和数据的压缩解压缩。二者主要差异如下:

模块 Archive模块 zlib模块
本质 面向高性能场景的自研压缩框架 zlib C库的ArkTS封装及少量高层文件接口
适用场景 使用Native接口开发,对性能有要求,需要使用进度回调和取消操作接口OH_Archive_Reader_SetProgressHandlerWithData,大数据流场景 仅使用ArkTS开发,需使用zlib全套底层能力