近日,Lynx团队震撼宣布,其精心打造的跨平台UI框架——Lynx正式向公众开放源代码。这一框架旨在赋能Web开发者,使他们能够凭借既有技能,通过单一代码库,轻松构建出既适用于移动端原生环境,又能在Web端流畅运行的界面。
Lynx框架专为丰富多变的交互场景而生,其身影已活跃于TikTok等知名应用中。据官方阐述,Lynx集成了高性能的渲染引擎、功能全面的工具集、以性能为核心的双线程UI编程模式,以及基于Rust的现代化工具链等亮点,展现了强大的技术实力。
Lynx深度融合了开发者们耳熟能详的Web开发模式,允许他们继续沿用熟悉的标记语言和CSS来打造界面。该框架原生支持CSS动画、过渡效果、选择器、变量,以及现代CSS视效功能,如渐变、裁剪和遮罩,为开发者提供了极大的便利。
Lynx在架构设计上的独到之处,在于其静态强制划分用户脚本的运行环境。具体而言,用户脚本被拆分为两部分,分别运行在两个独立的运行时环境中。其中,主线程运行时由专为Lynx优化的PrimJS Java引擎驱动,享有独占的同步UI操作权限,负责处理启动和高优先级事件;而后台运行时则作为用户代码的默认执行环境,确保主线程的低负载与非阻塞状态。
这一创新架构为Lynx带来了两大显著优势:首帧直出(Instant First-frame Rendering,IFR)与主线程脚本(Main Thread script,MTS)。首帧直出通过短暂阻塞主线程,确保界面首帧一次性完整呈现,从而避免空白界面,为用户带来即时响应的流畅体验。而主线程脚本则是一小段静态调度的代码,专门用于处理高优先级事件和手势行为,实现原生般的交互触感。
在实际应用中,Lynx团队发现,从Web迁移到Lynx的界面普遍能够显著缩短启动时间,达到2至4倍的提升。同时,内部性能测试显示,在iOS平台上,Lynx的表现与同类技术不相上下;而在安卓平台上,Lynx则持续保持领先地位。
Lynx最初由字节跳动的工程团队研发,并将持续由其推动演进。作为Lynx的重要用户,TikTok高度认可其创新与潜力,并积极促进Lynx的开源发布。TikTok将在资金、技术优化、社区推广和生态建设等方面为Lynx提供全方位支持,共同推动其繁荣发展。
开源地址已公布,诚邀广大开发者共同探索与贡献。