就是传统意义上的 HTML5
。目前最新的 HTML
规范,互联网的下一代标准,W3C
联盟制定,手机端主要由 webkit
实现规范,对用户来说就是浏览器实现了它。
通过 HTML5
开发移动 App
时,会发现 HTML5
很多能力不具备。为弥补 HTML5
能力的不足,在 W3C
中国的指导下成立了中国HTML5+产业联盟,推出 HTML5+
规范。
HTML5+
扩展了 JS
对象 plus
,使得 JS
可以调用各种浏览器无法实现或实现不佳的系统能力,设备能力如摄像头、陀螺仪、文件系统等,业务能力如上传下载、二维码、地图、支付、语音输入、消息推送等。同时实现了 Android
和 IOS
的解析引擎,使得开发者的代码编写一次,可跨平台运行。
除了功能外,HTML5+
很重要的特点是提供了原生的渲染能力,通过 plus.webview
、 plus.nativeObj
、 plus.nativeUI
,让开发者可以使用 JS
来调用原生渲染能力,实现体验的大幅提升。
原生的 API
多达 40
万,HTML5+
的封装并非把 40
万 API
都封装了一遍,而是分成了 2
个层面:HTML5+
规范和Native.js
手机 OS
的原生 API
有四十多万,大量的 API
没有被 HTML5+
封装。所以 Native.js
把四十多万原生 API
映射成了 JS
对象,通过 JS
可以直接调 IOS
和 Android
的原生 API
。这部分就不再跨平台,写法分别是 plus.ios
和 plus.android
。
上面的 HTML5+
就是 Native.js
一个实现好的子集。Native.js
不是 JS
框架,是技术!
使用 Native.js
需要对原生语法和 API
十分的了解,你至少要学过 Android
或者 IOS
开发,否则只能复制别人代码。
HTML5+ Runtime
是 Native.js
的运行环境。相当于 .NET
之于 C#
,JRE
之于 JAVA
,有把 Native.js
映射到 JAVA
和 ObjectC
代码的原生 API
功能,从而实现原生的调用。
对于 HTML5+ Runtime
和 Native.js
的关系可以理解成:Native.js
是一种语言(语法基于 JS
),HTML5+ Runtime
是这语言的运行环境!
软件开发工具包,它和 Android SDK
,IOS SDK
一样。
HTML5+ SDK
是把 HTML5+ Runtime
封装为原生 SDK
,它有 3
个用途:
HTML5+ SDK
实现本地打包。通过原生代码扩展 HTML5+ Runtime
的功能。在现有原生项目中使用 HTML5+ SDK
替换原有的 webview
,以获得更强的 web
增强表现。
uniapp
uniapp
是一个使用 Vue.js
开发所有前端应用的框架,开发者编写一套代码,可发布到 IOS
、 Android
、 Web
、以及各种小程序、快应用等多个平台。从下面 uniapp
功能框架图可看出,uniapp
在跨平台的过程中,不牺牲平台特色,可优雅的调用平台专有能力,真正做到海纳百川、各取所长。
uniapp
>
HTML5+
>
Native.js
>
插件市场
uniapp
实现不了的或者没实现的使用 HTML5+
。
HTML5+
实现不了的或者没实现的使用 Native.js
。
Native.js
实现不了的或者没实现的去插件市场。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)