开发工具 跨平台开发:RubyMotion,rhomobile,ReactNative 还有其他吗?

yan32768 · 2016年02月14日 · 最后由 happyming9527 回复于 2016年02月17日 · 4536 次阅读

最近调研跨平台开发架构, 尤其在 ios 和 android 势均力敌的时代,只支持一种终端显示不可行,原生语言开发又很耗人力,欢迎大家进入讨论。

RubyMotion 是我首先调研的,有全套中文文档,照着做了个 demo,因为演示版只支持 android5.1.1,手机装不上。个人版企业版是收费的。

rhomobile 这个是全 E 文的网站, http://rhomobile.com/ 是摩托罗拉推出的跨移动平台的开发工具,除了 ios,android 还支持黑莓,wm,找了下中文介绍,说企业部署也是要收费的。因为没中文文档,看着吃力,国内似乎用的人更少。

ReactNative 最近比较火,刚刚看到的,使用 js 就可以搞定一切了,对于一般的应用,应该够了。又是开源的,前景比较看好。

刚刚完成一个 rhomobile 的应用,原来也是用 html 绘制 ui,还需要注册才能用,生成各个平台下的文件。

春节几天在研究你说的内容,简单说说:

1、native 开发没有你说的那么复杂,Obj-C/Swift 和 Java 不难。 2、PhoneGap/Cordova,如果会 Angularjs 可以用 ionic 来快速的出一套 原型 + 服务端。网上有很多现成的代码可以买到,主要是附近餐馆,产品展示一类,用的 Wordpress+ionic。 3、React/React Native 的例子不多,目前主要用在 iOS 上开发。 4、用墨刀做 demo,确定细节,用 axure 做高保真原型,实现效果。这块还在看书学习。

这周都在搞以上说的内容,看文章,看书,处理之前遗留的尾巴,主要是给 iOS 和安卓的 app 换图片,名称,编译重新发布之类简单的操作,不过学到很多。

补充:

学习成本高与低,不是应该考虑的重点。成本高?三个月?六个月?按照现在的技术迭代,都是边做边学。成本低?用一次不用了?那以后维护怎么办?

重点是要做什么。比如一个初期的 demo,简单明确就好。等产品成熟,还是离不开 native。但是越来越多的项目需要热更新来跟进功能,所以还是需要 react native 这种方案补充进来。而一些体验更好的部分又离不开 native。

现在 ReactNative 最火,我朋友做了几年跨平台 App 开发,他说要体验好还是要用原生语言开发。PhoneGap 到 React,几年学习成本也不低。

#1 楼 @liwei78 #2 楼 @cristinaoh 谢谢两位,我想这么费力的寻找跨平台开发方案,还是值得的,接下来看看 react 怎么样。

其实啊,我还是觉得长远一点来看,原生是最好的。

还有 DHH 大神的iOS/Android Adapter 方案,很期待!

RubyMotion、rhomobile、DCloud 的问题是,这些背后的公司都没有主营业务,也就是说,指着这些框架技术卖钱,所以,我更看好 Turbolink 或者 React Native,至少背后的公司不靠这个挣钱。

rhomobile 还没死? 居然做了新网站。LZ 其实不用跨很多平台, 黑莓,wm 不用考虑,iOS 和 Android 足够,其它用户让他们去买个新手机。

还有一个 Xamarin, 用 C#,库很多,而且平台。一些无界面的底层库,代码可以共用,这个很爽。如果是简单的 UI, 界面都可以共用:https://xamarin.com/forms 缺点是要钱,代码容易反编译。 https://store.xamarin.com/

如果可能还是原生平台开发,坑少。

我用 react-native 开发应用,相比繁琐的 oc 那感觉就像写了多年的 java 之后开始使用 rails 一样,尽管目前的 react-native 还尚未完全成熟,我还会坚持用下去因为 react-native 成长得很快。

react-native 我感觉并不属于你说的跨平台, 因为他 ios 跟安卓的写法完全是两种写法...

我觉得跨平台方案是第一选择. 一套代码, 一种技术栈, 以及基于其上的一个团队. 还是能很大程度上节省成本, 更快的推动产品迭代. 效果上, 原生的肯定会好. 不过大部分产品都活不到要求原生的时候.

各位都没听过 titanium 框架么?

这几天刚看见一个,nativescript,看介绍跨平台比 react native 彻底,楼主可以看看

#12 楼 @happyming9527 没听说过,愿闻其详。因为两大主流移动端架构不同,可能真的很难 100% 跨过去,rn 能做到 70% 我就知足了。

@yan32768 react native 我没研究过。不过 titanium 能做到 80%~90% 的代码相同。它也是跨平台的 native 框架。不同于 html5 的框架,它可以调用设备原生的功能,相机、电话、定位这些都没问题。在 appstore 上曾一度有 10% 的 app 是用它开发的。区别于其他普通的 native 的开发框架。它可以做到所见即所得,修改代码不用重新编译。开发修改的速度可能是原生框架的好几倍。最诱人的特性是代码可以放到服务器上,然后拉到手机端缓存起来,再执行。所以不需要频繁的提交 appstore 审核。这代表的是 app 开发的黑科技。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号