5 月 27 日消息,京东零售技术今日宣布:正式开源 Taro on Harmony C-API 版本,这次版本的发布,将带来更丰富的样式适配、更高效的渲染性能、更全面的组件支持,让开发者以 Web 范式的方式来开发出媲美原生鸿蒙性能的应用。
据介绍,京东鸿蒙版 App 于去年 9 月在鸿蒙应用商城正式上线,App 中核心购物链路,如首页、搜索、商详、购物车、订单、结算和我京等页面,都是通过 Taro on Harmony C-API 版本进行开发,并且获得了华为的 S 级应用认证。
IT之家从京东零售技术官方获悉,Taro 是由京东发起并维护的开放式跨端跨框架解决方案,支持以 Web 的开发范式来实现小程序、H5、原生 App 的跨端统一开发,从 18 年开源至今,在 GitHub 已累计获得 36,000+ Stars。过去一年,Taro on Harmony 方案完成从 ArkTS 方案到 C-API 方案的升级,成功实现了对鸿蒙的完全适配,扩展了 Taro 的兼容平台家族,实现了对 H5、小程序、RN、原生鸿蒙多端的统一开发。
Taro on Harmony 技术方案为开发者提供如下优势:
-
降低鸿蒙应用开发门槛,让开发者能够运用熟悉的 Web 技术栈快速构建纯血鸿蒙应用
-
基于鸿蒙 CAPI 构建的高性能渲染管线,在保证开发高效率的同时实现了与原生应用媲美的性能表现
-
开发者可以充分复用现有研发生态,将存量 Taro 项目快速适配迁移至鸿蒙平台,加速业务在鸿蒙生态的布局与上架进程
另外,Taro on Harmony 技术方案支持开发者使用 React DSL 来开发纯血鸿蒙应用,整体架构可简单分为三层:
-
最上层是应用业务代码所在的 ArkVM 层,这一层在 C-API 版本中主要运行业务代码、React 的核心代码以及少量的 Taro 运行时代码
-
中间层是 Taro 的 CSSOM 和 TaroElement 树,负责处理上层 Taro 运行时代码传递下来的指令,比如 TaroElement 节点树创建,绑定关系以及设置属性等操作
-
最下层存放的是 TaroRenderNode 虚拟节点树,这棵节点树和真正的上屏节点树是一一对应的关系,同时在 TaroRenderNode 节点树内会创建对应的 Yoga 节点
IT之家附项目开源地址如下:
-
Taro 本地开源地址:https://github.com/NervJS/taro
-
鸿蒙 C-API 开源地址:https://github.com/NervJS/taro-harmony-capi-library