ZeroUI:轻量级 Android SDUI SDK - Version:0.1.4

作者:越野小张 分类:ZeroUI

ZeroUI 是一款面向 Android 平台的轻量级 SDUI SDK。

它的核心功能非常直接:客户端在获取到一份协议后,能够根据协议内容渲染出对应的页面,并处理组件、布局、状态、交互、请求及主题等一系列能力。

简而言之,你可以将 ZeroUI 视为一个“按说明书搭建页面”的工具。服务端负责提供页面描述,Android 客户端则负责将其稳定、准确地呈现出来。

以下截图来自 ZeroUI Demo 中的 Showcase 页面,展示了当前 SDK 已覆盖的核心能力。

Screenshot_20260519_022435.png

Showcase 是什么

Showcase 是 ZeroUI 的功能演示集合,也可以理解为 SDK 的能力清单。

它将常见的 SDUI 能力划分为以下几个模块:

  • Components(组件)
  • Layout and lists(布局与列表)
  • Interaction and state(交互与状态)
  • Request and data(请求与数据)
  • Skin and tones(主题与样式)

每个模块对应一个相对独立的能力集合。这样的划分非常清晰:如果你想了解组件渲染能力,可以查看 Components;如果想了解状态管理与交互,可以进入 Interaction and state;而请求与数据绑定相关功能,则集中在 Request and data 部分。

Components:基础组件

实现 SDUI 的第一步,是确保基础组件的渲染足够稳定。

ZeroUI 目前支持常见的 UI 元素,例如文本、按钮、卡片、图片、图标、开关、输入框等。

Screenshot_20260519_022443.png

这些组件本身并不复杂,但它们是整个 SDK 的基石。只有组件渲染稳定可靠,后续的布局、状态管理与数据绑定才有意义。

在这一部分,Showcase 主要演示 ZeroUI 如何根据协议,将不同类型的组件渲染到 Android 页面上。

Layout and lists:布局和列表

有了基础组件之后,下一步就是如何将它们合理地组织起来。

ZeroUI 支持常见的布局能力,包括 Column、Row、Spacer、Alignment、Weight,以及 LazyColumn、LazyRow、forEach 等列表与重复渲染能力。

Screenshot_20260519_022402.png

这部分能力决定了 ZeroUI 能否从“渲染几个孤立组件”进阶到“组织一个完整页面”。

例如,一个设置页面、一个卡片流、或一个横向推荐列表,本质上都需要依赖布局与列表能力来实现。

Interaction and state:交互和状态

页面不能只用于展示,还需要响应用户的操作。

ZeroUI 提供了一系列基础的状态管理与事件处理能力,例如 setState、increment、toggle、batch、conditions、dialog、toast、track、navigation 等。

Screenshot_20260519_022523.png

这些能力使得页面能够处理点击、切换、条件展示、弹窗、提示、埋点以及页面跳转等交互。

可以这样理解:协议不仅描述了“页面长什么样”,还可以描述“用户操作后会发生什么”。

Request and data:请求和数据

许多动态页面都需要加载远程数据。

ZeroUI Showcase 中也包含了与请求相关的演示,涵盖 HTTP 请求、onMount 自动加载、成功与失败状态处理、事件值传递,以及 dotted-path 数据绑定等。

Screenshot_20260519_022550.png

这部分能力使得页面可以在展示时自动发起数据请求,并将接口返回的结果绑定到具体的组件上。

对于配置页、活动页、详情页、表单页等场景,请求与数据绑定是非常关键的一环。

Skin and tones:主题和样式

除了结构与交互,页面还需要统一的视觉风格。

ZeroUI 通过 skin tokens 来管理常见的样式属性,例如颜色、背景、文本样式、圆角、间距、按钮与卡片风格等。

Screenshot_20260519_022616.png

这种方式可以减少协议中的样式硬编码,实现页面结构与视觉风格的分离维护。

同一份页面协议,在不同的 skin 配置下可以呈现出不同的视觉效果。

ZeroUI 适合什么场景

ZeroUI 更适合那些轻量、灵活、变化较快的页面场景,例如:

  • 运营活动页
  • 配置页
  • 设置页
  • 简单表单
  • 动态卡片
  • 实验性功能
  • 简单详情页

它并非旨在替代所有原生页面。对于动画复杂、交互性强、性能要求高的核心页面,原生开发仍然是更合适的选择。

ZeroUI 的定位更接近于:为那些需要灵活调整、但不值得频繁发版的页面,提供一个轻量级的动态渲染方案。

总结

ZeroUI Showcase 展示了 SDK 当前的核心能力:组件、布局、列表、状态、交互、请求、数据绑定以及主题样式。

作为一款轻量级的 Android SDUI SDK,ZeroUI 注重协议简洁、接入成本低、能力实用,以及在 Android 端的稳定渲染。

随着协议与组件能力的持续完善,未来它将能够逐步承接更多轻量动态页面的场景。

ZeroUI:用协议描述页面,用 Android 原生能力渲染页面。

https://github.com/zhangjingwei/zeroui/releases

标签: ZeroUI

评论

发表评论

正在加载评论...