宿主运行环境

Light程序运行在三端:iOS(iPhone/iPad)、Android 和 用于调试的开发者工具(Lightview&LightviewPC)。

三端的脚本执行环境以及用于渲染非原生组件的环境是各不相同的:

在 iOS 上,逻辑层的 javascript 代码运行在 JavaScriptCore 中,视图层是由 WKWebView 来渲染的,环境有 iOS8、iOS9、iOS10;

在 Android 上,逻辑层的 javascript 代码运行在系统内置的webview引擎中,在JSNative运行时使用原生组件渲染,在web运行环境使用系统的webview引擎渲染;

在开发工具上,lightview是原生程序,运行环境分别和Android/iOS一致,在LightviewPC中Light逻辑层的 javascript 代码是运行在 electron 中,视图层是也是由 Chromium Webview 来渲染的。

平台差异

尽管三端的环境是十分相似的,但是还是有些许区别:

JavaScript 语法和 API 支持不一致:语法上Light编译后的包支持 ES6 转 ES5 的功能来尽可能规避语法性质的差异;此外,框架基础库内置了必要的Polyfill,来弥补API的差异。

在JSNative运行环境下不同平台渲染表现不一致:建议开发者需要在 iOS 和 Android 上分别检查Light程序的真实表现。

开发者工具仅供调试使用,最终的表现以客户端为准。