求指教,用 HTML5 开发安卓应用,工具怎么选。

2014-09-10 10:08:13 +08:00
 wwlweihai
详细介绍下,本人有java后台开发的基础,现在有需求开发安卓和苹果的APP,得知HTML5可以实现,而且维护方便,请问大家,我该如何选择开发工具和学习路线!
6731 次点击
所在节点    问与答
23 条回复
Fatcoder
2014-09-10 10:22:08 +08:00
itcook
2014-09-10 10:27:14 +08:00
Hybrid app 框架有 Sencha Touch, Phonegap 等;

还可以用纯 Single-page application 框架结合 WebView 搭建,如 AngularJS, EmberJS 等。

另外整合和扩展了 AngularJS 的 ionic 也不错: http://ionicframework.com

只是提供基本思路,我也没有深入研究。
itcook
2014-09-10 10:32:49 +08:00
光 HTML5 是不够的,觉得 Javascript 始终是绕不过去的。当然 UI 方面还要 CSS 来帮忙。










所以最后……恭喜你变成大前端!
janwen
2014-09-10 10:36:41 +08:00
@itcook 通过html5开发就不用原生APP了?
wwlweihai
2014-09-10 10:44:38 +08:00
@itcook 有相关的教程吗?
wwlweihai
2014-09-10 10:45:05 +08:00
@janwen 据说,可以。但是性能不如原生的好!
wadezhao
2014-09-10 10:48:44 +08:00
用HTML5进行混合开发,可以分两部分,一是要有个UI框架,比如IAF,JQueryMobile,iScroller等等;二是要有个打包器,常见的就是PhoneGAP和Sencha。

UI创建我推荐IAF,以前叫JQ.Mobi,兼容jquery语法,性能好,现在被Intel收购,改叫IntelApplicationFramework了
打包器最常用的就是PhoneGAP,Sencha没研究过,不知道是否要结合它自己的UI框架来用,它是基于EXT JS框架的,语法比jquery要晦涩很多,很庞大,性能很差,但是兼容性和精致度要好

想快和功能多的话,推荐国内的AppCan,它有自己的编辑器和打包器,扩展出来的API也比较多,有点像国产汽车,单看参数,是非常好的,就是一些细节不够稳定,以前我强力推荐,但是后iOS7出来它很久不能适配,渐渐没再关注,不知道现在发展的如何了。


如果javascript水平很好,可以看看Titanium,跨平台js开发,相当于用V8引擎(iOS下用苹果内置引擎)将js解释了,再调用原生代码去执行,控件是真正原生的,性能和功能都不是混合开发能比的,不想学原生的javascript高手首选。
itcook
2014-09-10 10:50:42 +08:00
@janwen 其实一楼 @Fatcoder 给的 cordova 我觉得就是个打包工具:把 web app 打包成「原生」app……


@wwlweihai 其实我是个产品汪……完全还没达到可以 coding 出成品的高度,只是凭着有点前端基础粗略地了解了下 AngularJS 和 ionic, 这两个的官网都提供了教程。
itcook
2014-09-10 10:56:07 +08:00
@wadezhao 是高手

也关注过 AppCan, 当时的文档相当不规范,都没细看就先 pass 了。

Titanium 个人觉得有点重,所以后来最关注的是 ionic
belin520
2014-09-10 10:58:39 +08:00
这个 Demo 我觉得对你会有很大的帮助
https://github.com/BelinChung/HiApp
Shared
2014-09-10 11:00:55 +08:00
@itcook 现在的项目是用 AngularJS + Ionic 做前端的,实话实说,AngularJS 很棒,但是很复杂。Ionic 就比较业余,到目前为止还没出正式版,而且真心不咋好看,提供的动画效果也很糙。

希望有 AngularJS 的高玩能介绍下适合 AngularJS 并且针对移动应用的前端框架,不需要路由功能、就只提供动画和 UI 就好了
wadezhao
2014-09-10 11:02:07 +08:00
@itcook 我从上手Titanium之后就没再研究过混合开发了,ionic对我来说是新的,所以没有研究过。ionic说到底还是一个HTML5框架,Ti其实和他们都不一样,事实上Ti几乎和所有其他第三方开发都不一样,他这种类似Basic的解释执行方式,是独一无二的。其他的MonoTouch和Delphi,最后应该还是编译成本地的代码。
Shared
2014-09-10 11:02:07 +08:00
@wadezhao 回帖的时候没看到你的回复…想问下 IAF 能和 AngularJS 无缝配合吗?
wadezhao
2014-09-10 11:05:27 +08:00
@Shared 呵呵,你又少看我一楼回复。我已经很久不研究混合开发了,AngularJS也没有什么研究,抱歉了~~~不过简单Google了一个AngularJS,我猜IAF是没办法和它兼容的,另外IAF性能好、提供的插件多,是我那时研究的结果,也许现在已经有后起之秀了呢~~
guolei1998
2014-09-10 11:20:40 +08:00
我用过Mosync加appframework还觉得不错。
alex321
2014-09-10 11:24:02 +08:00
dcloud 出品的 hbuilder 似乎不错,内置了 html5+ 框架什么的。
itcook
2014-09-10 11:27:23 +08:00
@Shared 我关注框架的 feature 和实际的开发人员差别较大,或者说我对框架的理解深度还没达到真正的程序员的深度,我关注的是:

- 前端逻辑实现是否方便
- 常用 UI 组件是否完备和可扩展
- touch event 是否完备和易调用
- animation 多样性和可配置

说白了我是找一个 mobile app 的高级原型制作工具,只是玩,而不是作为实际 app 的生产工具。所以基于我的需求目前 ionic 还算比较满意的,只是这玩意儿的发展方向确实还不太明朗的感觉,不过已经比起之前了解的 framer.js 好太多了……
Shared
2014-09-10 11:33:06 +08:00
@wadezhao V2EX 应该增加即时回复的功能 :)

我并不是要开发 hybrid 应用,就只 HTML5 single-page app 而已。我用 AngularJS 有段时间了,最大的感受是 AngularJS 确实很强,对似乎并不太重视移动开发这边,主要还是倾向于开发桌面应用。所以开发的时候各种不顺手。

也许 IAF 和 @belin520 用的 Framework7 是更好的选向。
janwen
2014-09-10 11:40:26 +08:00
对于我们这却ios开发人员来说,如果能用html5包装一下,那真能省钱啊
omi4399
2014-09-10 12:41:42 +08:00
JQueryMobile + PhoneGAP 最佳选择,还可以在线打包

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/132640

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX