web-dev-qa-db-ja.com

Ruby on Railsを使用してモバイルアプリを開発できますか?

RailsはMVCアーキテクチャを使用するため。 Railsを使用してモバイルアプリや任意のWebアプリを開発できるかどうか疑問に思っていました。
MVCからは、モバイルアプリを開発するために「M」と「C」は変わりませんか?
モデルとコントローラーはウェブサーバーのままです。
ビュー部分のみを変更して、モバイルユーザーにUIを提供するためにJavaまたはAndroid sdkなどのhtml.erbファイルを使用するように変更する必要があります。 。

この見方について教えてください。また、私はJrbuyがモバイルアプリの開発要件に影響を与えると聞いています。 ?

30
Hemanth

この質問に対する答えは、このアプリの展開方法によって異なります。電話で完全に実行したいですか、それともiPhone/Androidアプリを装ったWebアプリにできますか?

ネイティブアプリソリューションの場合、 Rhodes Framework をチェックアウトします。 RoRではありませんが、MVCフレームワークに似ていることがわかります。これにより、Rubyを使用してネイティブのiphone/Androidアプリを構築できます。

2番目のオプションであるモバイルアプリを装ったWebアプリについては、 Sencha Touch をお勧めします。 Senchaは、Javascriptライブラリを使用して、ネイティブのiPhone/Androidアプリのルックアンドフィールを模倣した素晴らしい仕事をしました。このソリューションでは、AndroidおよびそのUIを介したiphoneを対象としていますが、他のWebアプリとまったく同じです。

25
rwilliams

サンプルを作成しましたRails/ember.jsというアプリPhonegapでエクスポートされます。 RailsとEmber.jsアプリの通常のMVCアーキテクチャを使用します。多分あなたはそれが便利だと思うでしょう。また、ember-authといくつかのOAuth戦略。

現在、de the develブランチ: https://github.com/joscas/base_app/tree/devel

Herokuデプロイ: https://starter-app-staging.herokuapp.com (デスクトップバージョン)

phonegap-Rails gem(私も著者です)でエクスポートされ、アセット、修正パスなどに使用されます。

5
joscas

絶対にYES!

Ruby on Rails単なるバックエンド技術であり、通常のブラウザで行うことと同じです。モバイルアプリについて考慮する必要があるのは2つだけです。1つ目はモバイルブラウザのコンテンツサイズですサイズに合わせてレイアウトを調整する必要があるためです。ビューポートと呼ばれるHTMLメタタグが役立ちます。

例.

このスクリプトは、ユーザーのブラウザーにコンテンツがデバイスサイズに適合することを伝え、initial-scaleはビューポートレートを定義し、maximum-scaleはこのページがスケーリングできる回数を定義します。user-scalble= 0はユーザーがページをスケーリングできないことを意味します。ビューポートの詳細については、Mozillaのドキュメントを確認してください。

他に考慮する必要があるのはHTML5技術ですが、実際には、jQuery mobileを使用している場合、これらは問題ではありません。ドキュメントを確認することをお勧めします。これは誰にとっても非常に便利で明確です。

4
Ravi Kant

RubyonRailsはWebアプリケーションフレームワークです。サーバー上で実行され、ユーザーは「MVC」から「M」だけをサーバー上で処理し、「 V」と「C」は完全にクライアント側で(モバイルブラウザで)。

理論的には、RubyOnRailsアプリケーションをクライアント側(RubyOnRailsサーバーなどでも)に完全にデプロイできますが、それはかなり高価で困難ですが、合理的なプロジェクトでは必要ありません。

仮定:選択できる方法は2つあります。

  1. サーバー上のRubyonRailsアプリケーションを整理し(モデルを処理)、適切なjsライブラリを使用してクライアント側で「V」と「C」を処理します。
  2. Ruby(RubyOnRailsアプリケーションではない)を開発できます-少なくともJRubyでAndroid向けに開発することは可能です。
1
Sergey

はい、できます。ビューは、ビューとしてのWebページ/ Android/iOSアプリケーションにすることができます。

1
Priyanka Chabbi

React Nativeを使用してみてください。バックエンドテクノロジーは引き続きRubyになりますが、フロントエンドはReact Nativeを使用してモバイルアプリを構築できますAndroidおよびiOS。

React Native

0
PONCY

UIだけの問題であれば、jQuery Mobile(現在はまだアルファ版)を試してみてください。モバイルとのより緊密な統合が必要な場合、Railsを実行しても十分に効率的であるとは思わない。

0
Franck Verrot