什么是基于Ruby的移动跨平台解决方案?

我正在研究如何使用Ruby进行移动跨平台开发。 我们需要至少支持Android和iOS,支持Windows Phone和Blackberry。 这将是一个应用程序,最终将在公众的应用程序商店,所以它不是一个企业内部唯一的东西。 到目前为止,我发现:

  • Rhodes ,涵盖了所有提到的平台和开源。 我们现在不需要RhoMobile的额外(付费)function
  • RubyMotion ; 仅限iOS,费用为199 dolla,遗憾的是没有试用版
  • Ruboto ,Android和开源
  • MobiRuby ,iOS仅支持Android支持计划,开源,但在撰写本文时看起来还不够成熟以满足我们的需求

我们还有一个必须使用的用例,我们需要同时访问摄像头和加速度计,并从屏幕上的加速度计中提取数据。 因为这是如此具体,所以我所看到的任何跨平台框架(包括Phonegap,Titanium等其他框架)都不支持它,看起来我需要为每个平台编写本机代码才能实现这一点。

到目前为止,我倾向于选择Rhodes。 它是一个经过validation的框架,似乎能够完成我需要的一切,包括上述用例的“原生”。 另一种选择是使用RubyMotion和Ruboto,它们都是编写Ruby而不是Objective-C或Java的解决方案。 从理论上讲,我应该能够跨平台共享通用代码(如连接和存储),尽管我找不到任何成功使用这两个代码来编写适用于Android和iOS的应用程序的示例。

我想知道是否有人可以证实我的想法或者我忽略了什么。 当然欢迎任何其他见解。

Related of "什么是基于Ruby的移动跨平台解决方案?"

如果选择Ruboto,则可以按原样使用与UI无关的Ruby代码。 无论如何,UI代码很可能是依赖于平台的。

Ruboto还很年轻,但还有更多的项目开始使用它。 一个例子是

https://play.google.com/store/apps/details?id=com.jonsoft.globalchat

它跨平台共享通信Ruby代码。

作为Ruboto项目的开发人员之一,我可以向您保证良好的支持和完整的Ruby体验。

对于iOS,RubyMotion看起来不错,但我还没有使用它。 您应该能够为共同逻辑使用共享代码库,但是为UI和访问传感器分开代码库。

我会继续使用Android的原生Java和iOS的RubyMotion,并有两个代码库。 RubyMotion是你提到的最稳定的,值得用于iOS开发,但在Android平台上没有一个好的选择。

Rhodes与网络应用程序没有任何关系。 Rhodes允许您使用Ruby构建本机应用程序,并且比这些替代方案更成熟多年。 它还支持每个主要的智能手机OS