@jflame
2015-07-06T01:41:17.000000Z
字数 1324
阅读 1443
hybrid
广义的hybrid很好实现,activity 里加个webview控件就行了。
事实上一个完整hybrid包括:
桥接器,native功能模块集合,相关开发工具的一系列解决方案
整个app就是一个webview
UI一般是纯html5实现
后两个是css+js移动端库,也就是移动端的“前端”框架,但官方其实就是奔着和cordova结合去的
Ionic仅支持iOS6和Android 4及更高版本,使用了 angularjs,有各种很好的css样式,web UI组件,比如 card list,以及比较容易使用的html5无限滚动
转场动画还是慢(与原生比,据说iOS里效果很好)
framework7 IOS7的风格,包括交互动画什么的
cordova 插件很多,毕竟全世界人民在用,不一定找得到 ORZ,很零散
主要是一些功能性模块,ionic 专门做了一个模块汇总打包
自定义开发插件相对容易
偏重于纯html5实现,尤其是其native.js技术,似乎是希望全部功能都用js实现(这是不可能的)
转场动画用webview实现,整个app就是多个webview的集合
内置一些基本功能模块,但还是太少了,需要自己去实现各种各样的需求,需要本地打包
整个app是多个activity,每个activity里又有多个webview。
转场是activity的原生转场动画,因此相对流畅
走的是 桥接器 + 类 parse(国内的有bmob/avoscloud)路线
我还没看到它的云服务比后几个有多大优势
劣势倒是不少,比如文档太少了
云平台有一些支持功能如自动更新、云修复
内置模块不少,尤其是原生UI插件很多,而且还在一直增加,但有很多坑和bug,怀疑其稳定性和安全性。
但总会有各种各样的需求需要自定义模块
很难调试,不能使用 chrome 的inspect(其他大多方案会用这种调试方式)
添加自定义模块不方便,因为不能使用 R ,自定义模块必须小心引用开源SDK之类的lib
而且它就算只是官方模块也不开源,想照着自定义模块都没法
文档太简略,尤其模块开发SDK,简直是让人去猜方法有什么用
个人觉得,其注重商业运作重于产品技术
crosswalk 支持 安卓4.0+,iOS8+
http://support.ludei.com/hc/en-us/articles/202568973-First-steps-with-CocoonJS-CLI
转场、navigator用原生实现,内容展示用H5实现。
native总归是有优势的,一些情况,纯js不好实现,而native却有往往有现成的方案(比如各种开源库,一些官方控件等等)