Lynx:字节跳动开源的高性能跨平台 UI 框架

Lynx:字节跳动开源的高性能跨平台 UI 框架

字节跳动近期宣布开源其自研的跨平台 UI 框架 Lynx,该框架已在 TikTok 等应用中广泛使用,旨在帮助 Web 开发者利用现有技能,通过一套代码同时构建移动端原生界面与 Web 端界面。

Lynx 官网:https://lynxjs.org/

Lynx 框架简介

Lynx 是一个面向多端应用开发的高性能 UI 框架,支持使用 Web 标记语言、CSS 和 JavaScript 创建原生跨平台移动应用。其核心目标是为开发者提供接近原生体验的跨平台开发能力,提升开发效率和应用性能。

Lynx 的核心特性

1. 双线程架构

Lynx 采用静态强制划分用户脚本的运行环境,将用户脚本拆分为两个独立的运行时:主线程运行时和后台运行时。主线程运行时由专为 Lynx 优化的 JavaScript 引擎驱动,负责处理启动和高优先级事件;后台运行时作为用户代码的默认执行环境,确保主线程的低负载与非阻塞状态。

2. 首帧直出(IFR)

通过短暂阻塞主线程,Lynx 确保界面首帧一次性完整呈现,避免空白界面,为用户带来即时响应的流畅体验。

3. 主线程脚本(MTS)

Lynx 支持一小段静态调度的代码在主线程运行,用于处理高优先级事件和手势行为,实现原生般的交互触感。

4. 原生 CSS 支持

Lynx 原生支持 CSS 动画、过渡效果、选择器、变量,以及现代 CSS 视觉效果,如渐变、裁剪和遮罩,方便开发者进行界面设计。

使用 Lynx 构建应用

开发者可以使用熟悉的 Web 技术栈(HTML、CSS、JavaScript)在 Lynx 上进行开发。Lynx 提供了灵活的布局引擎,支持弹性盒布局(Flexbox)、绝对/相对定位、百分比尺寸和动态内容自适应等功能。

此外,Lynx 支持热更新和运行时热重载,使得 UI 调试和功能更新更加灵活高效。

Lynx 的性能表现

在实际应用中,Lynx 团队发现,从 Web 迁移到 Lynx 的界面普遍能够显著缩短启动时间,达到 2 至 4 倍的提升。内部性能测试显示,在 iOS 平台上,Lynx 的表现与同类技术不相上下;而在安卓平台上,Lynx 则持续保持领先地位。

Lynx GitHub开源地址

Lynx 项目已在 GitHub 上开源,地址为:https://github.com/lynx-family/lynx。开发者可以通过提交 Issue、Pull Request 等方式参与项目的开发和优化,共同推动 Lynx 的发展。

相关推荐

看tv或Kantv不能使用后,推荐大家好用的看剧神器
365app最新版安卓下载

看tv或Kantv不能使用后,推荐大家好用的看剧神器

📅 07-17 👁️ 970
5大主流操作系统大盘点
365app最新版安卓下载

5大主流操作系统大盘点

📅 07-28 👁️ 3625
买黄金项链去哪家最好(买金项链到什么店买好?)
365app最新版安卓下载

买黄金项链去哪家最好(买金项链到什么店买好?)

📅 07-14 👁️ 4656