16

モバイル クロスプラットフォーム開発に Ruby を使用する方法を検討しています。少なくとも Android と iOS のサポートが必要です。Windows Phone と Blackberry のサポートも必要です。これは、最終的には一般向けのアプリ ストアに掲載されるアプリになるため、エンタープライズ向けの社内だけのものではありません。これまでのところ、私は見つけました:

  • Rhodesは、言及されているすべてのプラットフォームとオープン ソースをカバーしています。今のところ、RhoMobile の追加の (有料) 機能は必要ありません
  • ルビーモーション; iOS のみで 199 ドル、残念ながら試用版はありません
  • Ruboto、Android のみ、オープンソース
  • MobiRuby、iOS のみで Android のサポートが計画されているオープン ソースですが、執筆時点では私たちのニーズを満たすには十分に成熟していないようです

また、カメラと加速度計の両方に同時にアクセスし、画面上に加速度計からデータを描画する必要がある必須のユース ケースもあります。これは非常に具体的であるため、私が調べたクロスプラットフォーム フレームワーク (Phonegap、Titanium などを含む) ではサポートされていません。これを機能させるには、プラットフォームごとにネイティブ コードを記述する必要があるようです。

これまでのところ、Rhodes を選択する傾向があります。これは実績のあるフレームワークであり、前述のユース ケースの「ネイティブ化」を含め、私が必要とするすべてのことを実行できるようです。もう 1 つのオプションは、RubyMotion と Ruboto の両方を使用することです。どちらも、Objective-C や Java の代わりに Ruby を作成するためのソリューションです。理論的には、プラットフォーム間で共通のコード (接続やストレージなど) を共有できるはずですが、これら 2 つを使用して Android と iOS の両方で動作するアプリを作成した例は見つかりませんでした。

誰かが私の考えを確認できるかどうか、または私が何かを見落としているかどうか疑問に思っています. もちろん、追加の洞察は大歓迎です。

4

3 に答える 3

4

Ruboto を選択すると、UI に依存しない Ruby コードをそのまま使用できます。いずれにせよ、UI コードはプラットフォームに依存する可能性が最も高いでしょう。

Ruboto はまだ若いですが、それを使用し始めているプロジェクトが増えています。一例は

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

プラットフォーム間で通信 Ruby コードを共有します。

Ruboto プロジェクトの開発者の 1 人として、優れたサポートと完全な Ruby エクスペリエンスをお約束します。

iOS では RubyMotion が良さそうですが、使ったことはありません。共通のロジックには共有コード ベースを使用できますが、UI とセンサーへのアクセスには別のコード ベースを使用できます。

于 2013-01-08T09:17:38.143 に答える
2

Android にはネイティブ Java を、iOS には RubyMotion を使用し、2 つのコード ベースを用意します。RubyMotion は、あなたが言及したものの中で最も安定しており、iOS 開発には価値がありますが、Android プラットフォームには適切な代替手段がありません。

于 2013-01-08T00:54:06.570 に答える
0

Rhodes は Web アプリとは何の関係もありません。Rhodes を使用すると、Ruby を使用してネイティブ アプリを構築でき、それらの代替手段よりも何年も成熟しています。また、すべての主要なスマートフォン OS をサポートしています

于 2013-01-09T00:15:18.840 に答える