偶遇大神言论,摘录

phonegap出的早,自然用的人多。
phonegap自己的定位是混合开发hybrid,用原生+js;
HBuilder的定位是纯js搞定一切。
5+ 和 phonegap在能力、性能、开发便利性上都优于phonegap。

先看能力:

  1. 5+ 有HTML5+和Native.js技术,HTML5+包含常用的跨平台的几百个API,能满足常规开发需求,而Native.js把40w原生api映射成js对象,这样js可以直接调原生。HTML5+和Native.js的组合形成了最强大的能力引擎。 而phonegap需要用原生工程师写原生插件并给js开发者封装接口才能实现js调原生能力,开发成本、对人的要求都不一样。
  1. 当然5+ 也支持原生插件,这点和phonegap类似。一个已经写好的原生sdk,无需使用Native.js重写,也可以通过5+ sdk来集成。详见文档中心 - 5+ App - 5+ SDK
  1. 5+的直接封装的跨平台api比较全,二维码、摇一摇、地图、微信分享、语音输入、推送这些常用api都是跨平台的,使用方便简单。详见 http://www.html5plus.org/

再看性能:

phonegap做的app,在低端Android手机上很难流畅运行,否则HTML5早就火了,原生开发早就被挤压了。Phonegap为了避免HTML5的体验不佳,采用了spa模式,但这个模式其实在低端机上也玩不转,而且代码非常复杂。
5+ App的性能更高,它的动态效果都是被我们的增强引擎处理的,通过增强的引擎,可以在低端机上流畅的运行各种动态效果,比如侧滑菜单、下拉刷新、长列表滚动,见 官网首页 - App选项卡- 性能视频

最后看开发便利性:

phonegap没有专业开发工具,语法提示、调试、打包都很麻烦。
而在HBuilder里,5+的语法api提示非常完善;
把手机通过数据线连上电脑,HBuilder可以真机运行,保存一个页面立即在手机上看到效果,Android上还可以看console.log。而用phonegap,你改完一个页面,不得不先打包,然后安装在手机上,然后发现不对,然后改下代码,然后继续打包。。。
关于打包,phonegap由adobe提供了云打包,但需要先在本机准备资源,然后提交到国外的服务器,而HBuilder是一键打包,更加方便。当然phonegap和HBuilder都支持本地打包,那样就需要点原生开发知识了。

除了工具和runtime,还有mui框架

phonegap只是一个手机runtime,没有HBuilder工具,更没有Mui框架。
mui是目前最接近原生App的HTML5框架,它的体验比jqm、bootstrap等框架更接近原生,它的性能远高于jqm、bootstrap、Ionic、framework7等框架。
这种性能差别原因有2,一方面是设计思路不同,mui坚持用原生js做,不依赖jquery或angularjs,因为框架的依赖越多,App性能越差;另一方面是因为mui调用了5+的底层原生加速,这比不带原生加速的框架更快。
mui详见:http://dcloudio.github.io/mui/

当然phonegap有一个优势,就是能支持windows phone、blackberry,这方面5+确实没有支持。

html5+ plus和phoneGap、cordova的比较的更多相关文章

  1. phonegap,Cordova 使用html5标签

    某些安卓手机的webview使用location.href="tel:123456"不能调到打电话的界面,可以用下面的解决办法: config.xml文件最后加上一行: <a ...

  2. WINDOWS下PhoneGap(Cordova)安装笔记

    1.首先下载Node.js  安装nodejs很简单直接点击安装文件下一步直至成功即可,安装notejs的同时npm也会同时安装 成功后打开notejs的命令行工具 输入“node -v”," ...

  3. [Phonegap+Sencha Touch] 移动开发36 Phonegap/Cordova项目的图标和启动画面(splashscreen)配置

    原文地址:http://blog.csdn.net/lovelyelfpop/article/details/40780111 Phonegap/Cordova项目中的config.xml文件.里面配 ...

  4. 如何安装 PhoneGap / Cordova (for Win10)

    最近需要配置 PhoneGap / Cordova 环境,折腾了一阵子,写篇博客 Mark 一下整个过程. 具体参照了:http://www.assortedgarbage.com/apigee/ 以 ...

  5. PhoneGap+Cordova+SenchaTouch-01-环境搭建

    转http://my.oschina.net/zhongwenhao/blog/369465 环境搭建基于 windows  ,mac系统可以借鉴 1.安装NodeJS 和ruby http://no ...

  6. 跨平台移动开发phonegap/cordova 3.3全系列教程-目录

    目录(更新完成后会附上源码供参考) 第一章 android平台开发 phonegap/cordova简介 1.开发环境搭建 2.helloworld 3.启动画面 4.结合asp.net/jqmboi ...

  7. phonegap+cordova+ionic调用原生API

    上一篇博客讲了phonegap+cordova+ionic的环境搭建,今天再来分享一篇cordova调用原生API的文章.从技术角度上来讲,这并不是很难,只是有些细节要是没有注意,或者某些步骤不知道的 ...

  8. 【转】基于第一个PhoneGap(cordova)的应用详解

    PhoneGap是一套能让你使用HTML5轻松调用本地API接口和发布应用到商店的应用开发平台.官方说有低成本,低开发周期,轻量化等优点,这些咱暂时也没法证明,略过不表.但是有一条跨平台,却是很明显的 ...

  9. [转]Ionic – Mobile UI Framework for PhoneGap/Cordova Developers

    本文转自:http://devgirl.org/2014/01/20/ionic-mobile-ui-framework-for-phonegapcordova-developers/ Ionic i ...

随机推荐

  1. Android IOS WebRTC 音视频开发总结(十)-- webrtc入门002

    继续上一篇中未翻译完成的部分,主要包括下面三个部分: 1,扩展:WebRTC多方通话. 2,MCU Multipoint Control Unit. 2, 扩展:VOIP,电话,消息通讯. 注意:翻译 ...

  2. EntityFramework追踪Sql语句

    方法一:SQL Profile 这个工具只有sql标准版(standard) 及以上版本才有,我装的是SqlServer2012 Express,所以采用方法2. 方法二:EntityFramewor ...

  3. 2_2数据类型与C#部分语法[wp8特色开发与编程技巧]

    2_2数据类型 -5min 类型介绍 在上个视频中我们构建了我们第一个应用.这一次我们要来了解下c#的数据类型 众所周知,在我们已认知的世界里,我们把文字分为数字与字符.在程序的世界里面我们把数据分为 ...

  4. 基于opencv网络摄像头在ubuntu下的视频获取

     基于opencv网络摄像头在ubuntu下的视频获取 1  工具 原料 平台 :UBUNTU12.04 安装库  Opencv-2.3 2  安装编译运行步骤 安装编译opencv-2.3  参 ...

  5. 自己实现的一款在线Javascript正则表达式测试器——JRE-Parser

    本文最初发布于我的个人博客:http://jerryzou.com/posts/jreparser/ 昨天在看<正则表达式30分钟入门教程>的时候,看到博主自己实现了一个C#写的正则测试器 ...

  6. jquery用ajax方式从后台获取json数据,将内容填充到下拉列表。

    从后台获取json数据,将内容填充到下拉列表. url:链接 par:ID sel:下拉列表选择器 //获取下拉列表 function BuildSelectBox(url, par, sel) { ...

  7. HttpClient Post Form data and get Response String

    DefaultHttpClient httpclient = new DefaultHttpClient(); HttpPost httpost = new HttpPost("http:/ ...

  8. C#代码利用MongoDB中Group聚合函数查询

    例子: public static void getUserRFM(DateTime beginTime, DateTime endTime)        {            MongoDat ...

  9. tp框架集成支付宝,中转页变成gbk编码

    tp框架中集成支付宝的功能,将支付宝的demo例子存在到下图位置\Extend\Vendor\Alipay 生成支付订单 /** * 支付订单 */ public function pay() { h ...

  10. How to using T-SQL statement copy table[SQL]

    SQL复制表的几种方法:  仅复制表结构:select * into newTableName from OldTableName where 1 = 2 SQL复制整张表 select * into ...