ここにあなたがあなたの目標を達成するために知っておくべきことの簡単な概要があります。特に私が個人的にRoRを使用したことがないので、これほど詳細に説明するつもりはありません。これらの部分の一部はRoRに正確に関連していない可能性がありますが、その背後にある一般的な考え方は引き続き適用されることに注意してください。個々のコンポーネントを実装する方法を調査して理解するのはあなたに任せます。
すべての一般的な流れは次のとおりです。
Androidアプリ<==>ネットワーク<==>Webサービス<==>MySQL
データは両方向に流れるため、両刃の矢印に注意してください。
Android App
はクライアントであり、Web Service
およびMySQL
データベースはWeb Server
にあります 。完全を期すためにネットワーク部分のみを含めましたが、データがネットワークに送信されたら、何もする必要はありません。
各セクションの概要:
Androidアプリ:
Androidアプリは、Webサーバーとの間でデータを送受信するクライアントです。私はあなたのアプリで、ユーザーがいくつかのタスクを実行できるようにすることを想定しています。これは、本質的に、ある時点でサーバーに送信したいデータになります。
たとえば、ユーザーは自分の名前とお気に入りの動物を入力できる必要があります。ユーザーがクリックできる実際の「送信」ボタンがあるとしましょう。この[送信]ボタンをクリックすると、データを適切な形式にまとめてネットワーク経由で送信する必要があります。最も一般的なものの2つはJSON
です およびXML
。データが適切にフォーマットされたら、HTTP
などのある種のネットワークプロトコルを使用してデータをサーバーに送信する必要があります。 。データを送信するには、もちろんURL
が必要です。 ターゲットとして。ターゲットがwww.example.com/webservice.php
であるとしましょう 。このターゲットは、Webサーバー上にあるWebサービスです。
データを送信すると、サーバーはいくつかのデータで応答します。その時点で、サーバーはデータを使ってやりたいことが何でもできます。たぶんそれをユーザーに表示するか、SQLite
に貼り付けます データベース、またはその両方。
覚えておくべき重要なことは、魔法が起こっていないということです。今説明したものはすべて、ある時点でAndroidアプリケーションに書き込むJavaコードで実装されます。
詳細に調査し、Javaコードで実装する方法を理解する必要がある重要なアイデア:
- JSONとXML
- JavaでのHTTP
- RESTとSOAP
- こちら は、Androidアプリの構造を設定するための可能な方法に関する優れたビデオです。
- Androidアプリのすべてのネットワーク操作を別のスレッドで実行していることを確認してください。使いやすい方法は、インテントサービス です。 。
Webサービス:
これは多くの場合、最も紛らわしい部分です。 Web Service
Web Server
にアクセスしようとするクライアントのエントリポイントにすぎません。 。 RoR
を使用する場合、ここでの説明は少し異なる場合があります 、しかし同じ考えが当てはまります。上記のターゲットURL
www.example.com/webservice.php
でした 。 Webサービスは文字通りPHP
webservice.php
と呼ばれるWebサーバー上に存在するコード 。 Androidアプリで、ターゲットのURL
にデータを送信する場合 HTTP
を使用する 、Webサービスコードはサーバー上で実行されます(また、送信したデータにもアクセスできます)。 Webサービスコード内では、基本的にデータ(JSONなどの形式)を抽出し、必要な部分を取得して、それを使用して何かを実行します。この場合、データベースにクエリを実行している可能性があります。 PHPでは、サーバー上でも実行されているMySQLデータベースに接続してクエリを実行するコードを簡単に記述できます。データベースの応答がWebサーバーによって取得されると、Androidアプリに送り返すことができます。 以前と同じように、魔法は起こっていないことを忘れないでください。これらのアイデアはすべて、コードを書くことで実装されます。
調査する主なアイデア:
- Ruby onRailsWebサービス
- RubyonRailsを使用してMySQLデータベースにアクセスする方法
MySQLデータベース:
これは、Webサーバーにデータを保存する場所です。これについては、ここでは詳しく説明しません。これは、Webサーバー上にMySQLデータベースをセットアップする方法について多くのことを読む必要があるためです。 SELECT
などの適切なクエリを作成する方法を学ぶことも重要です。 、INSERT
など。
調査する主なアイデア:
Webサーバー上にMySQLデータベースをセットアップする方法
説明が必要な場合は、お知らせください!