开源 HTML5 APP 开发神器 CanTK

CanTK是一套基于HTML5 Canvas的GUI系统,它提供了完整的控件库,事件分发系统,窗口管理系统和不同的平台的适配。CanTK是为解决HTML5 App开发的两个基本难题而生的:

开发真正Native体验的APP

HTML的基因是文档,它的长处是呈现内容,而不是与用户交互,所以不管怎么努力,都很难开发出与Native媲美的应用。即使拿目前最优秀的HTML5 Mobile Framework(如Sencha touch和KendoUI)开发出来的App来看: 与网页相比,它们确实像APP,但是与真正的APP相比,它们又更像网页。这就是目前HTML5 APP最尴尬的地方。

HTML难以胜任APP开发的主要原因有:

HTML的基因是文档,文档内容微小的改变都会导致界面重排,而用户操作过程有反馈是现代APP最基本的要求,这些反馈都导致界面需要不断重排,消耗大量的CPU时间,所以HTML APP有了性能不佳的名声。

HTML本身并没有窗口管理机制,通常都是通过加载不同的页面来模拟不同的窗口。由于页面加载本身需要时间,HTML5 APP界面切换时通常都要启用等待动画,这也极大的影响了用户体验。

HTML控件本身的局限让模拟Native效果变得非常困难,HTML只提供了最基本的控件,虽然可以通过CSS来模拟一些控件,但是和原生GUI库相比那就差得太远了。

HTML5用来开发APP本身也是很困难的。很多外行都会说HTML不是很简单吗? HTML是很简单!但是用它开发APP却是很难的,否则Sencha touch这些库就不可能卖这么贵了。

上面有些原因可以通过工具或库来解决,有些原因则完全无法解决的。HTML5的出现确实为HTML APP带来了转机,因为HTML5 Canvas元素为开发者带来了巨大的灵活性,但是大部分厂商都是在CSS上是动脑子,所以几年之后HTML5 APP仍然不死不活。

CanTK则是完全放弃CSS和HTML控件,在HTML5 Canvas元素上实现的一套完整的GUI系统。虽然CanTK不是第一个在Canvas上做控件的,但是CanTK却是目前唯一一个完整的GUI系统。

为HTML5游戏引擎提供UI支持

任何一个游戏玩家都知道,游戏场景是只是游戏的一部分,稍微的复杂一点的游戏都有其它界面,比如设置,装备和商店等等。仔细观察这些界面, 我们会发现它们除了皮肤外,与普通APP的界面没有太大不同。HTML5游戏引擎都是基于HTML5 Canvas实现的,它们的优势是挖掘硬件图形渲染潜力(拼的就是速度),而GUI控件方面几乎都很弱。HTML控件表现力不佳,而且很难与HTML5 Canvas无缝集成,这让HTML5游戏开发者不得不花大量时间去做游戏界面。

CanTK解放了HTML5游戏开发者在UI的工作,让他们专注于游戏本身的开发。CanTK为目前流行的HTML5游戏引擎做了适配,其中包括cocos2d-html5, egret, pixi.js, panda.js和phaser.js,以后还会增加其它游戏引擎的支持。

CanTK的特色:

  • 完全开放源码给公司和个人免费使用(Under LGPL 2.0)。
  • 完整的GUI系统满足APP开发的需要。
  • 开发真正的Native-Like的应用程序。
  • 比传统HTML5 APP更好的性能和体验。
  • 无缝集成到HTML5各种游戏引擎。
  • 超强扩展性,可以实现任何你想要的控件。
  • 提供可视化开发工具,在线开发HTML5 APP和游戏。
  • 根据Layout参数自动适配不同分辨率和密度的屏幕。
  • 用JSON取代HTML和CSS,全部界面数据放到一个压缩的JSON文件,一次加载全部界面(数据很少,30个窗口小于40K),界面切换瞬间完成。
  • 支持各种Mobile平台,测试过的平台包括iOS, android, windows phone, firefox, blackberry和tizen。

文章转载自 开源中国社区 [http://www.oschina.net]

时间: 2024-12-21 01:16:57

开源 HTML5 APP 开发神器 CanTK的相关文章

开源HTML5 APP开发工具 CanTK

问题描述 CanTK是一套基于HTML5 Canvas的GUI系统,它提供了完整的控件库,事件分发系统,窗口**系统和不同的平台的适配.CanTK是为解决HTML5 App开发的两个基本难题而生的:**开发真正Native体验的APP**HTML的基因是文档,它的长处是呈现内容,而不是与用户交互,所以不管怎么努力,都很难开发出与Native媲美的应用.即使拿目前最优秀的HTML5 Mobile Framework(如Sencha touch和KendoUI)开发出来的App来看: 与网页相比,它

html5 app开发重大消息-腾讯在技术端推进Html5生态发展

    日前,腾讯正式发布腾讯浏览服务(Tencent Browser Service,以下简称TBS),宣布为合作伙伴提供整合腾讯底层技术.内容框架.广告体系以及大数据等多方面能力的升级浏览解决方案.腾讯公司副总裁钟翔平表示,TBS带来了浏览能力的升级,为Html5开发者提供更强的技术能力,将真正在技术端推进Html5生态的发展.     尽管目前Html5所带来的移动互联网营销异常火爆,但据很多html5 app开发者反映,由于开发Html5页面后需要反复测试,导致开发适配成本很高,同时为了

H5 APP开发必读,20个你不知道的Html5新特征和窍门

Jeffrey Way曾发表过一篇博文<28 HTML5 Features, Tips, and Techniques you Must Know >讲述了28个HTML5特征.窍门和技术,张鑫旭将本文进行了翻译,并做了适当编辑整理,本楼楼现转载于此,并附上一个H5实际演示案例,大家直接点击即可体验H5的强大效果.H5 App已势不可挡,希望本文帮助大家更了解移动应用开发.全文如下: 前端的发展如此之迅猛,一不留神,大侠你可能就会被远远地甩在后面了.如果你不想被HTML5的改变/更新搅得不知所

Polycode:免费、开源的跨平台(游戏和APP)开发工具

Polycode:免费.开源的跨平台(游戏和APP)开发工具 发表于2013-03-27 08:53| 次阅读| 来源 C++SDN| 0 条评论| 作者张红月 开源PloycodeMoaiC++http://www.aliyun.com/zixun/aggregation/13484.html">Cocos2d-xUnity 3D游戏引擎 摘要:Polycode是 一款免费.开源的跨平台开发工具, 遵循MIT协议,代码托管在GitHub上.其API的设计理念是"用更少的代码做更

App开发竞争严酷已成红海 下一站Web端HTML5

中介交易 SEO诊断 淘宝客 云主机 技术大厅 "App刷票",近来移动互联网领域一个炙手可热的新名词.意指由专门的团队在苹果AppStore这类软件商店中,通过使用大量账户下载和评论某款应用,使其排名迅速攀升."App刷票"背后则是移动互联网市场竞争渐趋白热化.据统计,目前国内iOS和Android平台上的开发者达20万,但整个市场收入才15亿元人民币左右,即平均年收入7500元. 触屏.智能手机.移动操作系统.应用商店--这些名词问世时间再短也已是明日黄花,难道

“微信应用号对行业影响”之一,app开发速来围观

昨天,微信张小龙的一个讲话刷爆朋友圈,除了4大价值观,最后顺便提到:要推出微信应用号! 其实,价值观也就说说听听,最后顺便提到的微信应用号,才是真正的巨型炸弹. 腾讯挟6亿高粘度用户之重,号令天下,阿里百度难与争锋.微信应用号这一巨型炸弹投放后,且看谁在颤抖哭泣?谁在雀跃欢呼? 先看看谁在颤抖哭泣 钉钉?马化腾张小龙最喜欢"玩左右互博,干掉第三者",第三者是钉钉?还是BAT的各种号? 各大app商城:你多久才去app商城找软件?每个月下载几个新app?相比之下,你每天要看多少html5

9大跨平台移动 App 开发工具推荐

如今,移动应用开发已经变得越来越重要,开发人员面临最大的挑战之一就是在多个平台上运行应用程序.最新的应用程序代码支持"一次编写,到处运行"(WORA)的概念,即只要在一个平台上编写代码一次,就可以在多个平台运行.本文我们将为大家介绍 9 个优秀的移动 App 开发工具,帮你在短时间内设计出最前沿.最高效的应用. 9.移动应用开发工具 Codename One Codename One是一个针对移动应用开发者的.开源的.跨平台的Java工具,旨在帮助Java开发者通过单一代码库来针对所有

【有奖调查】作为一个偷懒的App开发者,你都用到哪些App开发工具或平台

问题描述 作为一个偷懒的App开发者,你都用到哪些App开发工具或平台,或是直接上手写原生代码? 我这里说的开发工具,是类似于appcan , apicloud, crossapp 这类的,可以帮助快速做app的. 一些通用的工具就不要说了哈,比如程序员鼓励师,UltraEdit,eclipse,键盘,鼠标啥的大家都知道的就不要说了哈:)  请说明:1.采用了什么样的开发工具或平台2.好用不, 都有啥功能?3.用这个解决了开发过程中的什么问题  都请大声的说出来吧,我们将根据回复抽出20个,送出

人人都是开发者:5款傻瓜式APP开发工具

谷歌推出的App Inventor Android App开发工具可以让你仅通过拖拉式的简单操作就可以创建自己的Android App.对于那些为了特定目的想要动手尝试开发一个简单应用的用户,除了App Inventor其实还有很多其他的选择,比如下面介绍的5款工具就可以让所有人都能轻松开发手机应用.不过如果你真想做个专业的开发者,还是像lion一样踏踏实实从基础学起比较好. 国外的营销工作者和技术开发者开发了许多能帮助企业创建简单APP应用的工具,通过这些工具,就算是一个对程序一窍不通的普通网