移动端跨平台框架分析

移动端跨平台框架分析

移动端开发的软件需要覆盖到android及ios平台。以前都是用原生的代码来做开发,android用java,ios用objective c。这样做,虽然可以达到最好的效果,但是成本太高,需要写两套代码,而且对开发人员的要求很高。对于一些中小开发团队来说,是承受不起的。

现在,已经有一些比较成熟的移动端跨平台框架,可以大大的提高我们的开发效率。

主流的方案都是基于html5的做为开发语言,依赖于手机上的自带的webwiew提供运行环境。WebView可以使得网页轻松的内嵌到app里,还可以直接跟js相互调用。当然,有一些web不支持的功能,比如调用摄像头什么的,可以通过webview提供的接口,通过插件的方式,来提供给web层调用。

所以,手机端跨平台框架,需要解决两个方面的问题:

  1. 前端:对手机端进行优化的的webui&javascript库。

    手机端的浏览器和webview,不比PC端的浏览器,性能上要差强人意一下。许多在PC端用WEBUI 和javascript库到手机端,都显得很笨重。但是手机端的流览器要比PC端的要新,不用向PC端一样,过多地考虑浏览器的兼容性,可以尽情的使用html5的新特性。所以,对于手机端用的html5 UI库,一定是定制的,一定是对移动端优化过的。
    常用的库有jquery Mobile,MUI等。

  2. 后端:webview插件的机制的封装,来屏蔽底层细节,对web层的提供统一的调用接口,更加方便我们的使用。

    一般的开源实现就是phonegap了。

跨平台整体解决方案

  • DCloud :这个是目前来说,最让我满意的方案。是国产框架。提供HbuilderIDE,webui使用MUI,是最接近原生App体验的前端框架,在手机上基本上看不到卡顿,运行效率很高,开源框架。后端使用5+ Runtime 来调用原生API。这个应该是对中国中小型开发团队来说,成本最低的,开发效率最高的。
  • Ionic:国外的一款接近原生的Html5移动App开发框架,免费开源。后端用的phonegap,前端为自定义的WEB框架。
  • React native: Facebook 出品一个移动端开发框架,可以最大限度的接近原生的效果。因为它的实现已经抛弃了webview,而是在React的基础上,实现了自己的一套UI渲染引擎。react Native我认为是最有潜力的,但是现在还不太成熟,许多的组件,android和ios端还没有通用,如果自己不提供下封装,可能还是需要写两套代码。

你可能感兴趣的:(移动端跨平台框架分析)