混合应用开发:Phonegap VS AppCan

混合应用开发:Phonegap VS AppCan

简介

Phonegap

PhoneGap是一个用基于HTML,CSS和JavaScript的,创建移动跨平台移动应用程序的快速开发平台。它使开发者能够利用iPhone,Android,Palm,Symbian,WP7,Bada和Blackberry智能手机的核心功能——包括地理定位,加速器,联系人,声音和振动等,此外PhoneGap拥有丰富的插件,可以以此扩展无限的功能。PhoneGap是免费的,但是它需要特定平台提供的附加软件,例如iPhone的iPhone SDK,Android的Android SDK等,也可以和DW5.5配套开发。使用PhoneGap只比为每个平台分别建立应用程序好一点点,因为虽然基本代码是一样的,但是你仍然需要为每个平台分别编译应用程序。

AppCan

AppCan是国内Hybrid App混合模式开发的倡导者,AppCan应用引擎支持Hybrid App的开发和运行。并且着重解决了基于HTML5的移动应用目前"不流畅"和"体验差"的问题。使用AppCan应用引擎提供的Naitve交互能力,可以让HTML5开发的移动应用基本接近Native App的体验。

框架优缺点

Phonegap

优点

支持大部分系统:Android,iOS ,Symbian, Windows Phone, Palm WebOS,

Bada , Symbian

开源,可以进行框架底层优化

框架提供自定义控件,可以调用android原生功能

第三方插件丰富

安装包体积偏小

文档丰富

可在本地调试、发布

支持本地打包、云端打包

缺点

不同平台需要搭建不同开发环境

框架没有UI,需要使用第三方UI插件

框架仅提供基本API,扩展功能需要使用第三方插件

框架不支持自动加密,需要手动对HTML加密

框架未对UI进行优化,应用加载及UI相应时较慢

由于第三方开发人员水平不同,插件质量参差不齐

AppCan

优点

支持四大主流系统:Android,IOS,Symbian,Windows Phone

提供一体化解决方案,方便环境搭建、开发、调试、发布

框架自带UI包,包含常用控件样式

框架API丰富

支持本地打包、云端打包

基于密钥的代码加密

技术支持相应及时

框架对UI、动画渲染进行过优化,反应速度快

缺点

不开源,无法修改、优化底层代码

暂不支持自行开发控件/,无法调取android原生功能

框架自带功能过多,导致应用安装包偏大。

文档偏少

部分系统无法使用IDE进行调试

只能在服务器端发布,无法在本地发布

                     IOS发布,需要将证书上传至服务器

详细比较

基本情况


Phonegap


AppCan


框架目标


PhoneGap的最终目的是终结现存目标平台间的差异


快速开发、多种平台、解决基于HTML5的移动应用目前"不流畅"和"体验差"的问题,提供统一的解决方案


框架功能


简单


丰富


支持平台


大部分平台


仅4种平台


开发环境


不同平台需要不同开发环境


只需一个IDE包


Windows 7 X64 英文版、Windows 8 X64 英文版 无法进行模拟器调试


编译器不支持的HTML标签


可以编译、调试、发布


不能调试,只能生成apk包,安装至手机


调试


可直接调试


本地发布的IOS包,必须部署在越狱的机器上


发布


在本地可以直接发布


必须将代码上传至服务器,才能发布


IOS 签名管理


本地管理


需要上传至服务器


代码泄露风险


低:仅在本地、svn保存代码


高:需将代码上传至appcan服务器


中国化



强:与新浪合作提供云服务等


多语言


插件支持


插件支持


安装包大小



开发


Phonegap


AppCan


开发语言


HTML 5 + js + CSS 3


HTML 5 + js + CSS 3


开发环境


不同平台需要不同开发环境


Eclipse(IDE 内置)


UI


JQM等三方控件或自行设计


AppCan.UI或第三方UI控件或自行设计


自定义控件


支持自定义控件(原生代码),方便前台调用


暂不支持调用自定义控件(原生代码),2.0后将支持


官方API


较少,功能比较单一


比较丰富


第三方控件


比较丰富


仅支持UI、JS控件


多线程


支持


支持


多窗口


需要使用插件


框架支持


Iframe


不支持


不支持


后退


需要插件


框架自带API


Socket等


需要自行开发控件(已有第三方控件)


官方API支持,暂无法保持socket连接

性能


Phonegap


AppCan


页面加载


有明显的延时


有明显的延时


页面切换


部分第三方控件会出现明显的抖动


将亮度不为最暗时,加载新页面,有明显的变暗


会出现白屏,需要使用第三方控件屏蔽


不会出现白屏


动画渲染


较差


较好


细粒度测试


较差


一般


初始化内存


8.5MB


11MB


初始化Cpu使用量


一般


一般


UI刷新


每线程20毫秒刷新一次,4个线程开始出现刷新不及时


每线程20毫秒刷新一次,120个线程并无出现明显刷新问题


content页面在离开后不会结束,可能会出现重叠


应用加载速度


较快(不强制使用欢迎页面、部分数据初始化可在欢迎页面完成)


差(系统强制使用欢迎界面,数据初始化无灾欢迎页面进行)


页面加载速度


较慢(不使用插件时直接跳转,但会出现白屏)


一般(原页面等待0.5-1.5秒后跳转)

其他


Phonegap


AppCan


退出确认


自行开发


框架封装


文档


丰富


一般(逐渐增加)


技术支持


一般


方便


提交问题渠道


论坛、Q群(民间)、官方邮箱


论坛、Q群(官方)、官方邮箱

附1

Content 页面导致重叠效果

备注:

以上测试系统为:HUAWEI C8812

不同型号手机,Phonegap性能完全不同,由于时间紧张,并未使用多终端进行测试。

时间: 2024-10-12 21:22:32

混合应用开发:Phonegap VS AppCan的相关文章

【Hybrid App】一个产品经理眼中的PhoneGap Vs. AppCan

首先在写这篇文章前,必须先申明一下,本人是技术出身,对HTML技术及手机客户端都有过编程经验,只是出于工作岗位的变动,便没有再具体代码工作,以下文章涉及的中间件的基本代码实现及前期的API使用,都是自己测试过的,虽然比较浅,但是都是真真实实的.所以请各大网友拍砖,手下留情哦~另外本文的视角如文章标题一样, 是从产品经理的角度去做比较的,不是从技术方面上去做比较. AD: 而关于原生态的开发,个人觉得HTML5中间件或者混合原生的方式肯定是不用做比较的,毕竟原生的东西还是很强大的,很多效果是HTM

(转)Phonegap VS AppCan

简介 Phonegap PhoneGap是一个用基于HTML,CSS和JavaScript的,创建移动跨平台移动应用程序的快速开发平台.它使开发者能够利用iPhone,Android,Palm,Symbian,WP7,Bada和Blackberry智能手机的核心功能——包括地理定位,加速器,联系人,声音和振动等,此外PhoneGap拥有丰富的插件,可以以此扩展无限的功能.PhoneGap是免费的,但是它需要特定平台提供的附加软件,例如iPhone的iPhone SDK,Android的Andro

Android混合应用开发之页面跳转

Android混合开发之Activity类与html页面之间的相互跳转(并解决黑屏问题) 在底部有本程序源码下载 本程序流程:程序启动-->testActivity--->phonegap2框架类--->index.html--->testActivity,主要实现activity与html页面的相互跳转,并实现 传递参数的功能. 程序结构图: 1.创建一个安卓项目,在该项目里面添加PhoneGap框架(具体步骤请点击查看),我们知道我们在定义一个主界面的时候往往用的是Activi

混合应用开发 Hello Html5 (一)

本文是混合应用开发入门教程,如果您不懂原生应用开发,那么请尝试混合模式的应用开发.本教程将使用Android.Html5和Cordova进行样例讲解.   一,创建开发环境并下载开发包:  关于Android开发环境搭建请自行上网查询,本教程不作讲解. 使用的相关开发包: Android 4.4.2 Sencha Touch 2.4.x Cordova 3.4.0 二,创建混合应用 1,创建Android Project如下图所示,默认点击下一步直至完成创建. 2,在项目中加入cordova-3

混合app开发,h5页面调用ios原生APP的接口

混合APP开发中,前端开发H5页面,不免会把兼容性拉进来,在做页面的兼容性同事,会与原生app产生一些数据交互: 混合APP开发,安卓的兼容性倒是好说,安卓使用是chrome浏览器核心,已经很好兼容H5页面,而且运行机制也是能够同步运行:但ios上就没那么容易了:. 在此我就不说兼容安卓的问题,只把ios问题说说: 问题1:H5调用ios接口,ios需要初始化,js代码在ISO上只运行一次 解决: 本人使用是angular框架搭建的H5页面 var ua = navigator.userAgen

React Native电商项目实战混合APP开发 React Native实战 混合APP实战开发

React Native  和 angular+ionic 是目前网络上最火的混合APP开发语言,其功能强大能够开发出安卓和IOS程序! ------------------课程目录------------------ <React Native电商项目实战>├<01React Native初体验>│  ├01-React Native简介.mp4│  ├02-React Native环境搭建.mp4│  ├03-React Native初体验及其它环境搭建.mp4│  └04-R

混合app开发

学习目标: 了解目前移动app开发的三种模式 了解mvc和mvvm架构模式 熟悉混合app的开发应用场景 掌握混合app开发的概念 掌握angularjs.ionic.和cordova在混合app开发中的作用. 目前移动app开发主要分为三种模式 Native App . Web App .Hybrid App 原生ap是使用相应平台特有的开发工具进开发 外观和性能极佳 但开发成本高 因为每一种移动操作系统都需要独立开发项目 web App 网页应用程序 需要依赖于移动端浏览器 主要使用html

什么是混合app开发

webApp 移动app 就是在浏览器中运行的web应用 (网页应用)开发成本低 体验差 不需要安装 NativeApp :用Android和object-C原生语言开发的应用 开发成本高 需要安装(原生应用) HybridApp :就是外面是原生的壳,里面是webApp应用,兼具2者的优势 开发成本中 需要安装(混合应用)<未来开发趋势借助ionic组件库>混合开发常用四个1.ionic(基于ang) emmet.io2.HTML5+3.AppCan(组件库)4.Framework7 jq

Monaca Web IDE 初体验 —— 开发PhoneGap/Cordova应用程序,还用什么Eclipse/XCode!

技术能实现的,就一定会发生,现在轮到Web IDE了. Monaca 是纯在Web端运行的一个基于Cordova生态的Web IDE,其功能之完善与易用已经足以让Eclipse和XCode汗颜.坊间传闻Javascript一统江湖的时候不远了,因为控制了UI,你就控制了世界. 先来看看怎么用吧: 1.登录 http://monaca.mobi 以后打开左上角的“DashBoard” 2.Monoca不愧是良心作品,提供了很多入门的Sample,其中的Onsen UI是一个非常优秀的Mobile