# Parceler_ohos **Repository Path**: isrc_ohos/parceler_ohos ## Basic Information - **Project Name**: Parceler_ohos - **Description**: 鸿蒙的序列化与反序列化封装实现 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 8 - **Forks**: 1 - **Created**: 2021-02-04 - **Last Updated**: 2021-11-16 ## Categories & Tags **Categories**: harmonyos-toolkit **Tags**: HarmonyComponent ## README # Parceler_ohos **本项目是基于开源项目parceler进行鸿蒙化的移植和开发的,可以通过项目标签以及github地址( https://github.com/johncarl81/parceler )追踪到原安卓项目版本** #### 项目介绍 - 项目名称:序列化与反序列化封装实现 - 所属系列:鸿蒙的第三方组件适配移植 - 功能:支持各种基本数据类型的快速序列化与反序列化,简单易用 - 项目移植状态:基本功能实现 - 调用差异:无 - 开发版本:sdk5,DevEco Studio2.1 beta3 - 项目发起作者:吴圣垚 - 邮箱:isrc_hm@iscas.ac.cn - 原项目Doc地址:https://github.com/johncarl81/parceler - ![输入图片说明](https://images.gitee.com/uploads/images/2021/0304/162134_182a4877_8496150.png "sample1.PNG") - ![输入图片说明](https://images.gitee.com/uploads/images/2021/0304/162147_bfeafa1a_8496150.png "sample2.PNG") - ![输入图片说明](https://images.gitee.com/uploads/images/2021/0304/162226_06f2e412_8496150.png "sample3.PNG") #### 项目介绍 - 编程语言:Java - 外部库依赖:无 #### 安装教程 1. 下载Parceler的har包:parceler.har和parceler_api.har。 2. 启动 DevEco Studio,将下载的har包,导入工程目录“entry->libs”下。 ![输入图片说明](https://images.gitee.com/uploads/images/2021/0304/162330_cfd962a4_8496150.png "1.PNG") 3. 在moudle级别下的build.gradle文件中添加依赖,在dependences字段中增加对libs目录下har包的引用,然后执行gradle sync。 ```groovy dependencies { implementation fileTree(dir: 'libs', include: ['*.har']) …… } ``` 在sdk5,DevEco Studio2.1 beta3下项目可直接运行 如无法运行,删除项目.gradle,.idea,build,gradle,build.gradle文件, 并依据自己的版本创建新项目,将新项目的对应文件复制到根目录下 #### 使用教程(可以参考本工程的entry模块) 1. 定义自己想要处理的数据,例如int: ```java int intIn = 34258235; ``` 2. 序列化。调用wrap()函数将该数据序列化: ```java Sequenceable intWrapped = Parcels.wrap(intIn); ``` 3. 反序列化。调用unwrap()函数将序列进行反序列化,还原成原来的数据: ```java int intOut = Parcels.unwrap(intWrapped); ``` 4. 更多类型数据的序列化与反序列化可以参考本工程的entry模块 #### 版本迭代 - v0.1.0-alpha 实现了Java的基本数据类型(如Int、float、String等)的快速序列化与反序列化 实现了部分HarmonyOS的数据类型(如PlainArray、Sequenceable等)的快速序列化与反序列化 由于AnnotationProcessor还存在一定问题,所以暂不支持自定义类的序列化与反序列化 #### 版权和许可信息 - Parceler_ohos经过[Apache License, version 2.0](http://www.apache.org/licenses/LICENSE-2.0)授权许可。