前段时间做HTML5 Web App的研究和设计,仔细了解了以下的流行Web app框架
Native APP、Web APP、Hybrid APP特性对比:
|
|
|
|
|
|
NativeApp
|
WebApp
|
HybridApp
|
开发成本
|
高
|
低
|
中 |
跨平台
|
否
|
是
|
是
|
需要安装
|
是
|
否
|
首次安装
|
实时增量更新
|
支持
|
支持
|
是
|
系统API调用
|
能
|
否
|
能
|
开发灵活度
|
中
|
中
|
高
|
对AppStore依赖
|
高
|
低
|
低
|
Frameworks |
PhoneGap |
Titanium |
jQueryMobile |
jQTouch |
Sencha Touch |
介绍 |
PhoneGap是一个开源的开发框架,使用HTML、CSS和JavaScript来构建跨平台的的移动应用程序,它使开发者能够利用iPhone、Android、Palm、Symbian、WP7、Bada和Blackberry智能手机的核心功能——包括地理定位、加速器、联系人、声音和振动等,此外PhoneGap拥有丰富的插件,可以以此扩展无限的功能。 |
Titanium 是一个跟手机平台无关的开发框架,用来开发具有本地应用效果的Web应用。当前主要支持 iPhone 和 Android 手机。
主要提供的API包括:
2D/3D animations
Geo-location, compass, and maps
Augmented reality features
Social app authentication and native client support for email
SOAP or REST API calls
Audio, video, and image capture and playback
Taps into local filesystem and SQL lite databases
Accesses photo gallery or address data |
针对所有流行移动设备平台的统一的,基于HTML5的跨平台UI框架,构建在稳定的jQuery and jQuery UI基础上。轻量级代码,重视渐进增强,支持灵活,简单的主题设计 |
jQTouch 是一个 jQuery 的插件,主要用于手机上的 Webkit 浏览器上实现一些包括动画、列表导航、默认应用样式等各种常见UI效果的 JavaScript 库。支持包括 iPhone、Android 等手机。 |
Sencha Touch2是高性能的HTML5移动应用开发框架,让开发者能开发可以运行在iOS, Android, BlackBerry快速和有表现力的应用
提供了50个内置组件,状态管理和内建MVC系统 |
网站 |
http://phonegap.com/ |
http://www.appcelerator.com/ |
http://jquerymobile.com/ |
http://jqtouch.com |
http://www.sencha.com/ |
设计目标 |
实现跨平台的基于HTML的移动应用,使用JavaScript来调用API与对应平台的SDK进行交互,以启动手机的GPS、震动、重力感应等功能 |
Titanium更注重提供原生的UI而只支持iOS+Android
Titanium框架具有如下几个方面的特点:
支持多平台(Linux、Mac、Windows、移动设备)
使用Web技术加快软件开发速度
支持Web中内嵌多种编程语言
支持对本地APIs的访问
通过Appcelerator网络云服务,基于Titanium的应用可以更容易的打包、测试和部署
本地功能的模块化,可动态加载指定的功能模块
强大灵活的语言扩展,用户在Titanium框架中可以很方便的扩展多种动态语言 |
Jquery mobile秉行"write less, do more"的原则,致力于帮助开发者开发出兼容最多平台与设备的高质量,自定义的web应用.无须针对每个设备或OS单独开发。目前Jquery Mobile已经支持所有A级浏览器,尽管有少部分的css3以及动画不能很少的执行 |
基于jQuery,但是其侧重点主要是为基于WebKit的浏览器提供经过优化的支持。因而,如果你打算一心锁定使用基于iOS或安卓的设备的用户,那么jQTouch可能比较合适。 |
基于EXTJS的全功能框架 |
框架类型 |
设备能力框架 |
设备能力框架+js代码转化原生代码的能力 |
UI框架 |
UI框架 |
基础框架+UI框架 |
支持的平台 |
iPhone、Android、Palm、Symbian、WP7、Bada和Blackberry等 |
iOS+Android |
支持iPhone、Android、Palm、Symbian、WP7、Bada和Blackberry等,具体参考
http://jquerymobile.com/gbs/http://jquerymobile.com/gbs/ |
针对IOS、Android提供经过优化 |
|
浏览器兼容性 |
浏览器无关 |
浏览器无关 |
支持常见的主流浏览器,不限于webkit内核
Firebox Mobile (10 Beta)
Skyfire 4.1
Opera Mobile 11.5
Dolphin browser
UC Browser
Chrome Desktop 11-17 - Tested on OS X 10.6.7 and Windows 7
Firefox Desktop 4-9 - Tested on OS X 10.6.7 and Windows 7
Internet Explorer 7-9 - Tested on Windows XP, Vista and 7
Opera Desktop 10-11 - Tested on OS X 10.6.7 and Windows 7 |
基于WebKit的浏览器提供经过优化的支持(Chrome和Safari) |
|
性能 |
一般 |
好 |
具备英文和中文文档,demo,wiki和社区 |
现在已经被Sencha合并,可能后续会不再支持 |
|
文档和示例支持 |
具备英文文档,demo,wiki和社区 |
资料一般 |
网上资料比较多 |
资料少 |
一般 |
集成IDE和云端打包支持 |
使用各平台自己的IDE打包
Dreamweaver CS5.5支持android和IOS打包
Adobe PhoneGap Build云端打包 |
使用Titanium IDE打包 |
不需要特定IDE
很多IDE都支持jquery和jquery Mobile |
不需要特定IDE
很多IDE都支持jquery |
Sencha SDK Tools,包括slicer(用于把CSS3的图片) 和JSBuilder(合并和压缩js代码) |
开源许可 |
Apache 2.0 license |
商业授权 |
Apache 2.0 license |
Apache 2.0 license |
开源许可是GNU GPL license v
如果用于商业,则有3种商业许可证,视发行数量付费与否
参考http://www.sencha.com/products/touch/license/ |
学习曲线 |
低
提供设备能力相关的13组API,并且支持Plugin
开发时需要使用各平台自己的IDE打包 |
高
所有的东西都通过调用js API实现,然后在发布时编译成native code
需要使用Titanium IDE打包 |
一般
采用了以HTML和CSS为中心的方法来开发页面 |
一般
与jQuery Mobile一样,jQTouch也采用了以HTML和CSS为中心的方法来开发页面,使用JavaScript专门致力于添加事件、动画及其他功能 |
高
使用ExtJs方式实现界面
Sencha Touch是开发框架当中功能最丰富的,不过学起来比较困难 |
最后提一下 JQ.Mobi 和 Zepto.js,这2个都是针对webkit优化的类jquery框架,api和jquery基本一样,但特别针对现代的浏览器做了优化
分享到:
相关推荐
app-UI 是一个免费开源的可重用 UI 组件容器的集合,对开发移动的 Web 应用非常有用,可使用 HTML JavaScript 开发交互式的移动 Web 应用。app-UI 可很好的跟 PhoneGap 集成。 标签:AppUI
第三部分主要介绍目前比较流行的两套JavaScript移动开发框架jQuery Mobile、Sencha Touch,以及PhoneGap,并配备丰富的例子作为实践;第四部分主要结合Sencha Touch框架库和HTML5技术构建进行讲解,旨在帮助读者将...
对于原生模式(Nativi App)、混合模式(Hybrid App)、Web App模式开发的优缺点进行分类说明。并对两款混合开发框架进行了特性对比,方便正在琢磨移动开发技术选型的同学进行参考。
第三部分主要介绍目前比较流行的两套javascript移动开发框架jquery mobile、sencha touch,以及phonegap,并配备丰富的例子作为实践;第四部分主要结合sencha touch框架库和html5技术构建进行讲解,旨在帮助读者将...
第三部分主要介绍目前比较流行的两套 JavaScript 移动开发框架 jQuery Mobile、 Sencha Touch,以及 PhoneGap,并配备丰富的例子作为实践;第四部分主要结合 Sencha Touch 框架库和 HTML5 技术构 建进行讲解,旨在...
《Android Web应用高级编程:移动与嵌入式开发技术》内容简介:熟悉Web app开发的开发人员可以掌握如何为Android移动平台开发Web app。 阅读完《Android Web应用高级编程:移动与嵌入式开发技术》一书后,你不仅能很好...
* APP 自动化测试框架主要用于移动端APP自动化测试项目,目标程序运行在移动设备上。 * HTML5 网页自动化测试框架主要用于移动端H5网页(比如微信程序),目标网页通过移动设备上的 Chrome 或者 Safari 浏览器运行...
因此,在本博客中,我们将讨论用于开发移动app的顶级JavaScript框架。对于Web开发而言,JavaScript是一个有前途的编程语言,并且在不久的将来它将依然在这个领域大放光彩。JavaScript在移动app开发上也有同样的影响...
2011年也是移动互联网高速发展的一年,随着iPhone、Android等智能设备的迅速普及,以及Web技术跨平台等优点更广泛的为人所知,移动Web技术逐渐成为大家关注的新热点之一。国内移动Web技术中文资源相对缺乏,社区尚待...
第4章 移动WEB的离线应用 第5章 移动设备的常见HTML5表单元素 第6章 移动WEB界面样式 第7章 GEOLOCATION地理定位 第8章 轻量级框架JQUERY MOBILE初探 第9章 重量级富框架SENCHA TOUCH入门 第10章 跨平台的PHONEGAP...
移动Web应用相对于本地的App有很多优势,虽然也有很多设计和开发上的挑战。这里列出了一系列有用的框架来帮助基于HTML的webapp开发。他们支持大部分流行的智能手机和平板。Lungo.js是第一个应用HTML5和CSS3特性的...
基于mui框架开发的移动web app登录注册页面源码,demo均来自国外大触公开参考案例
网络移动
现在移动web app越来越热门了,许多公司开始尝试使用angular、react、vue等MVVM框架来开发单页架构的web app。但在开发web app时,如果希望页面的导航体验也接近原生应用,那一般都会遇到这两个问题: 识别前进后退...
《Android Web应用高级编程:移动与嵌入式开发技术》内容简介:熟悉Web app开发的开发人员可以掌握如何为Android移动平台开发Web app。, 阅读完《Android Web应用高级编程:移动与嵌入式开发技术》一书后,你不仅能很...
jQuery Mobile是移动端的基于jQuery的Web前端开发框架,移动设备上的浏览器对HTML5的支持普遍较强,因而jQuery Mobile的UI设计主要针对HTML5,下面就来详细看一下使用jQuery Mobile框架开发移动端Web App的入门教程
Sparrow是一款针对移动web app开发的前端轻量级框架.
第三部分主要介绍目前比较流行的两套 JavaScript 移动开发框架 jQuery Mobile、Sencha Touch,以及 PhoneGap,并配备丰富的例子作为实践;第四部分主要结合 Sencha Touch 框架库和 HTML5 技术构 建进行讲解,旨在...