A
Air官方
引擎直连路线里最简的形态,是单表面渲染:整个应用只有一块全屏或近全屏的表面,引擎在里面画一切——菜单、画布、动画全都是画出来的像素。游戏引擎直连(Godot 类)与代码生成工具(GB7 类官方库直接调用)是 Air 系列的两个代表场景。
▍原理
ArkTS 壳把原生窗口交给引擎,引擎创建 EGL 上下文与交换链,从此这块表面的内容全部由引擎自绘。壳层只保留极少职责:生命周期转发、输入事件桥、系统对话框(文件选择、权限弹窗)。XComponent 的纹理消费模式让引擎输出与系统合成协作,表面销毁重建时引擎要能完整重建上下文。
▍单表面的纪律
第一,表面生命周期是头等公民:切后台、窗口模式变化、键盘弹出都可能触发表面重建,引擎的图形资源要能跟着表面走,重建期间的绘制调用要么排队要么丢弃,绝不能往失效表面写。第二,输入合成要克制:把触摸原始事件直接递给引擎,让引擎自己的手势系统处理捏合与双击,壳层自作主张合成点击再注入,是踩过的真实坑(合成事件处理不当会取消系统后续点击合成,整个区域触摸失效)。第三,系统 UI 桥接:文件选择、分享、剪贴板这些系统级交互保留原生通道,引擎画假 UI 模拟系统行为的体验与合规性都差。
▍适用场景
游戏、绘图板、代码生成器、模拟器前端——界面即画布的应用。它们共同点:上游自带完整 UI 系统,或根本没有传统 UI。
▍优缺点
优点:链路最短,性能上限高;引擎能力保留最完整。缺点:可访问性(无障碍、字体缩放)全靠引擎自理;系统级体验(输入法、暗黑模式)要靠桥接补;调试时截图是唯一真相,日志与渲染容易脱节。
▍真实用例
游戏引擎工程与代码生成基准工具都以单表面形态落地,后者验证了无 UI 库依赖、纯官方库直调的可行性。
免费无广告的安装包可以在官网下载体验。
▍原理
ArkTS 壳把原生窗口交给引擎,引擎创建 EGL 上下文与交换链,从此这块表面的内容全部由引擎自绘。壳层只保留极少职责:生命周期转发、输入事件桥、系统对话框(文件选择、权限弹窗)。XComponent 的纹理消费模式让引擎输出与系统合成协作,表面销毁重建时引擎要能完整重建上下文。
▍单表面的纪律
第一,表面生命周期是头等公民:切后台、窗口模式变化、键盘弹出都可能触发表面重建,引擎的图形资源要能跟着表面走,重建期间的绘制调用要么排队要么丢弃,绝不能往失效表面写。第二,输入合成要克制:把触摸原始事件直接递给引擎,让引擎自己的手势系统处理捏合与双击,壳层自作主张合成点击再注入,是踩过的真实坑(合成事件处理不当会取消系统后续点击合成,整个区域触摸失效)。第三,系统 UI 桥接:文件选择、分享、剪贴板这些系统级交互保留原生通道,引擎画假 UI 模拟系统行为的体验与合规性都差。
▍适用场景
游戏、绘图板、代码生成器、模拟器前端——界面即画布的应用。它们共同点:上游自带完整 UI 系统,或根本没有传统 UI。
▍优缺点
优点:链路最短,性能上限高;引擎能力保留最完整。缺点:可访问性(无障碍、字体缩放)全靠引擎自理;系统级体验(输入法、暗黑模式)要靠桥接补;调试时截图是唯一真相,日志与渲染容易脱节。
▍真实用例
游戏引擎工程与代码生成基准工具都以单表面形态落地,后者验证了无 UI 库依赖、纯官方库直调的可行性。
免费无广告的安装包可以在官网下载体验。
楼主
7 天前