我正在寻找使用Ruby进行移动跨平台开发的方法。我们至少需要Android和iOS的支持,并且Windows Phone和Blackberry支持也很好。这将是一个应用程序,最终将在大众的应用程序商店,所以它不是一个企业内部唯一的事情。到目前为止,我发现:基于Ruby的移动跨平台解决方案的使用?
- Rhodes,涵盖了所有提到的平台和开源。我们现在不需要RhoMobile的额外(付费)功能
- RubyMotion;只是,收费199 DOLLA的iOS,可惜没有提供试用版
- Ruboto,仅适用于Android和开源
- MobiRuby,仅适用于iOS与Android的支持计划,开源的,但看起来像它不是在写作的时候还不够成熟满足我们的需求
我们也有一个必须具备的使用案例,我们需要同时访问摄像头和加速度计,并在屏幕上从加速度计绘制数据。因为它非常特殊,所以在我看过的任何跨平台框架(包括Phonegap,Titanium等其他框架)中都不支持它,并且看起来我需要为每个平台编写本机代码才能实现此功能。
到目前为止,我倾向于选择罗德斯。这是一个经过验证的框架,似乎能够做到我需要的一切,包括上述用例的“本土化”。另一种选择是使用RubyMotion和Ruboto,这两种解决方案都是编写Ruby代替Objective-C或Java。理论上,我应该能够跨平台共享通用代码(如连接和存储),尽管我找不到任何人成功使用这两者编写可在Android和iOS上运行的应用程序的任何示例。
我想知道如果有人能证实我的想法或我忽略了某些东西。当然欢迎任何额外的见解。
你也可以看看[QT](http://en.wikipedia。org/wiki/Qt_%28framework%29#平台),它是支持大量不同平台的框架。还有一个rubygem,[qtbindings](http://rubygems.org/gems/qtbindings),它也提供了Ruby的绑定。 –
似乎Rhodes仅用于开发Web应用程序,正如我从他们的教程中了解的那样。 – Shmidt
据我所知,@Flink是正确的,罗德斯只是网络应用程序。 –