編集2
@MrTJがコメントで言ったように。どうやら Apple は単純な「ウェブサイト ラッパー」アプリケーションを許可しないようです。したがって、私の回答の残りの部分で説明されているようにRubyを移植するか、アプリケーションをネイティブに移植するか、@MrTJが彼の回答で説明するようなWebアプリを実行することしかできません。REST のような Web サービスでサポートされているネイティブに移植することが、おそらく最善の解決策です。Web アプリケーションも優れていますが、通常はネイティブ アプリケーションの方が優れています。どのようなユーザー エクスペリエンスを提供したいかによって異なります。
編集終了 2
編集 1
もっと注意深く読む必要があります。インターネットにアクセスする必要なく、アプリケーションを組み込みたいと仮定して、あなたの質問に答えました。それがあなたがやろうとしていることではない場合、それは間違いなく可能です.
webview を持ち、サイトのベース URL をロードするアプリケーションを作成するだけです。おそらく、常に戻るボタンなどを備えた特別なバージョンのサイトを作成して、ユーザーがサイトの隅で動けなくなることがないようにしたいと思うでしょう (ナビゲーションバーを非表示にしたいため)。
また、個人的にはこれはしません。できますが、おそらくすべきではありません。ユーザーがインターネットに接続していないときに何をすべきかを処理する必要があります。また、どこでも使用できるわけではないアプリケーションに (潜在的に) お金を払ってしまうと、満足度が低下する可能性があります。ネイティブ アプリケーションは、販売やパフォーマンスが大幅に向上する傾向があります。
編集終了 1
この質問に対する私の個人的な反応
クールな質問。個人的には、私は Ruby や Rails のファンではありません (私はどちらかというと Python 派ですが、Python のおかげでこの状況について何か知っているのです)、これはかなりクールな問題です。
自問する質問
これは可能ですか? おそらく
それは良い考えですか? おそらくない
努力する価値はありますか? おそらくない
そして最も重要なことは、Apple はあなたにそれを売らせてくれるだろうか? ....たぶん、しかし、このようなものについては、試してみないとわかりません....
何が必要
プロトコルを使用してネイティブ アプリケーションと通信する WebView。これは、ブラウザで iFrame と通信するために使用される URL ハッシュ タグ ハックや、PhoneGap が WebView と通信するために使用するプロトコルのようなものです。
Ruby インタープリターの組み込みバージョン。人々は、PythonとJavascriptCoreインタープリターの両方を使用して iOS でこれを行ってきました。Apple はこれを許可しないと言う人もいますが、それはもはや真実ではありません。iOS 用に特別に Ruby をコンパイルする必要があります。これはおそらく面倒ですが、Python/Javascript の実装に基づいて実装すれば、最終的には動作するようになるでしょう。
編集
この回答に関連する別の SO の質問/回答
iOS アプリケーションに JavaScript エンジンを埋め込む
end edit
Railsの組み込みバージョン...頑張ってください:)
Web サーバーなしで Rails アプリをトリガーする方法 (iPhone でローカルに apache を実行することはおそらく不可能であり (困難であり、おそらくすぐにクラッシュする可能性があります)、Android では絶対に実行できません)。各ビューを何らかの方法で手動でトリガーし、出力を文字列またはファイルにパイプして、その文字列 (HTML) またはファイルを WebView にロードする必要があります。
Rails アプリケーションでナビゲーションをトリガーする方法。これには、WebView からリンクが押されたことをキャッチし (iOS では URL の変更を監視できます)、適切な Rails ビューをトリガーしてその HTML を生成する必要があります。
問題
Ruby と Rails はどちらも非常に重いです。私が見たほとんどの実装では、少なくとも 256 MB の RAM が必要です。iOS は、起動時にこの量のメモリを使用しようとすると、アプリケーションを即座に強制終了します。Android はおそらくそれをはるかに適切に処理せず、アプリケーションの実行中のある時点で予期せずクラッシュするだけです。
Android はネイティブ コンパイル コードを実行しません。これは、JRuby を実行する必要があることを意味します。これにより、インタープリター言語がインタープリター言語で実行されたままになります ( 「モバイル デバイスでは地獄のように遅い」と読みます)。
これには、より多くの Ruby、いくつかの Javascript、およびより多くの Java または Objective-C を作成する必要があります。言い換えれば、しないでください。アプリケーションが何をするかを理解し、それを移植します。
キーラーニング
これはおそらく、まともな開発者が「単純な Web アプリケーション」に費やすよりもはるかに多くの労力を必要とするでしょう。いずれにせよ、この仕事を成し遂げるにはネイティブ開発が必要になるため、ネイティブ開発を学ぶ方がはるかに良いでしょう。