关于Phonegap的一些看法
呃, phonegap今年发展不错啊,至少“跨平台”一个词就是多少人无法拒绝的一个诱惑,而且使用HTML+CSS+JS开发,可灰常有吸引力。网易轻博LOFTER的移动客户端就是用phonegap开发的,但是目前只有iOS版本,Android版本似乎还在开发中。
试用了下iOS下phonegap做出来的LOFER,应该说UI效果非常接近原生APP,但不如原生APP流畅,可以感觉到网易LOFTER团队付出了很多的努力。
正好之前我也用phoengap和jQuery Mobile做过demo,说一下我的感觉吧, 只针对Android:
1. 界面做起来较快,毕竟HTML、CSS和JS这方面太成熟了,有很多的lib也是直接用。而且Android和iOS的浏览器对标准支持都非常不错。
2. 调试太过痛苦。原生APP开发都可以断点运行,但phonegap只是一个网页,是木有断点的,在上面跑的JS代码只能靠console一个变量一个变量的进行log来调试,我认为这是phonegap开发最大的一个障碍。有些时候完全是莫名其妙,会浪费很多时间在一些很sb的低级错误上。
3. 虽然部分功能可以在桌面上的Firebug或者Chrome下进行测试和调试,但桌面上的效果和部署到设备里的效果还是在个别地方略有不同。
4. 性能和原生APP比有差距。至少Android下这点感觉非常明显,页面切换明显感觉到卡。
5. js模板功能不强,用的mustache.js,还是感觉有很多不爽的地方。
6. Android下面还有很多神奇的问题(和API版本、具体设备有关):部分设备页面切换有闪烁,还有打开输入法时黑屏闪烁(这个问题开启硬件加速好像有缓解 但多个真机上依然有闪烁感)——这个不知道到底是phonegap的问题还是jQuery Mobile的问题。
-
另外说下 jQuery Mobile (1.0版本):
1. topbar bottombar的位置固定不准。滑动页面后,有时候会发现topbar bottombar悬浮在页面中间。
2. 页面长度计算不准,导致页面下面有大面积空白。虽然这个问题网上可以找到hack。
3. 自带的UI效果在桌面浏览器上看起来很美好,在移动设备上看起来就没那么顺眼了,感觉似乎有些“粗糙”,至少开发人员肯定可以感觉出来不是原生APP。
-
总之:感觉Phonegap虽然诱惑很大,在今年似乎还不是最好的选择,开发过程中一定会遇到很多frustration,特别是Android下。
另外还有个专注于Android平台下的HTML移动客户端解决方案,Rexsee: http://www.rexsee.com/CN/help.html。这个没用过,看介绍还不错,专门针对Android进行优化的话相信性能上也应该会有所提高,但是我一看这个网站的界面,立马内牛满面啊:尼玛啊,这网站的UI还停留在上个世纪的时候,看的就让人没有试用的欲望啊。
除了跨平台的功能性支持框架,类似jQuery之类的快速UI框架也很重要,但目前还不甚理想,定制性还不够灵活、至少不方便。
所以啊,这个东西啊,大家自己看着办啊….
© SweetRiver | 固定链接
aed83c53d10c3b66c2aadd60d313f4ba (209.85.224.84)
Steve Jobs (史蒂夫•乔布斯传)(美国版) | 史蒂夫•乔布斯传(Steve Jobs:A Biography)
美国纽约摄影学院摄影教材 | 不能承受的生命之轻 | 百年孤独 | 你在为谁工作