鸿蒙的序列化与反序列化封装实现

jacksky
发布于 2021-11-5 15:13
浏览
0收藏

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鸿蒙的序列化与反序列化封装实现-鸿蒙开发者社区鸿蒙的序列化与反序列化封装实现-鸿蒙开发者社区鸿蒙的序列化与反序列化封装实现-鸿蒙开发者社区
  • 项目介绍

    • 编程语言:Java
    • 外部库依赖:无

    安装教程

    1. 下载Parceler的har包:parceler.har和parceler_api.har。
    2. 启动 DevEco Studio,将下载的har包,导入工程目录“entry->libs”下。鸿蒙的序列化与反序列化封装实现-鸿蒙开发者社区
    3. 在moudle级别下的build.gradle文件中添加依赖,在dependences字段中增加对libs目录下har包的引用,然后执行gradle sync。
      dependencies {
          implementation fileTree(dir: 'libs', include: ['*.har'])
      	……
      }​

在sdk5,DevEco Studio2.1 beta3下项目可直接运行 如无法运行,删除项目.gradle,.idea,build,gradle,build.gradle文件, 并依据自己的版本创建新项目,将新项目的对应文件复制到根目录下

使用教程(可以参考本工程的entry模块)

  1. 定义自己想要处理的数据,例如int:
    int intIn = 34258235;​
  2. 序列化。调用wrap()函数将该数据序列化:
    Sequenceable intWrapped = Parcels.wrap(intIn);​
  3. 反序列化。调用unwrap()函数将序列进行反序列化,还原成原来的数据:
    int intOut = Parcels.unwrap(intWrapped);​
    1. 更多类型数据的序列化与反序列化可以参考本工程的entry模块

    版本迭代

    • v0.1.0-alpha

      实现了Java的基本数据类型(如Int、float、String等)的快速序列化与反序列化

      实现了部分HarmonyOS的数据类型(如PlainArray、Sequenceable等)的快速序列化与反序列化

      由于AnnotationProcessor还存在一定问题,所以暂不支持自定义类的序列化与反序列化

    版权和许可信息

  4.  

parceler_ohos-master.zip 1.17M 4次下载
已于2021-11-5 15:13:41修改
收藏
回复
举报
回复
    相关推荐