起因
在前一段时间,安卓统一使用了传说微信、qq都在使用x5-webview,但是效果并不是很明显,腾讯浏览服务是要做到统一安卓端的webview,但是腾讯的x5的条件是,该安卓手机已经安装了腾讯x5浏览器,换句话说就是,你的安卓手机上面,至少要有微信、qq、qq浏览器等之一的拥有腾讯浏览内核的产品,可以说覆盖面很广。
直接集成腾讯x5内核的话也存在诸多问题;所以还是需要一条跨平台之路。
分析
纵观现在主流开源的跨平台之路,有两条:
一条是由facebook开源的基于reactJs的react-native;
另外一条是由alibaba开源的可以说是基于VueJs的WEEX。
WEEX的上手体验
1.按照weex官方提供的文档在windows下直接搭建开发环境很难一次点亮,文档也是一如既往的烂啊,缺少好多应该比较细节的东西。
2.weex基本上提供了两种使用方式,一种是从零开始开发一个跨平台的app,另外一项中是集成到现有的app当中。
3.原理基本是weex经过编译会生成两个bundle.js一个是供web端使用的,另外一个是提供给安卓、ios使用的
4.weex引入了vue runtime js,先不说web端的实现这个应该去直接看vue会更好,直接说native端的实现,js作为连接原生控件与视图层的纽带,代替了以往使用java,oc,swift直接调用原生控件,这样生成的ui层依旧是原生的,和html毫无关系的
5.适合web开发者上手
react-native上手体验
1.原生开发者们更适合使用react-native
2.文档美如画、上手体验快如狗
3.要想深度使用react-native请熟读并背诵reactJs以及redux相关文档
4.缺点:BSD +专利许可证
5.2018年6月airbnb宣布放弃使用react-native。"Airbnb 放弃使用 React Native 的主要原因是 React Native 未能实现完全的跨平台抽象,有时候仍然需要针对特定平台单独编写代码来解决问题。这就间接要求他们的工程师必须熟悉三个平台才能真正用好 React Native