1

学習目的で、サーバーとデータを交換する必要があるAndroidアプリを作成しています。これで、Androidプログラミングに精通しているので問題ありません。問題は、サーバーをセットアップして、そのサーバーを介してアプリとデータを交換したことがないことです。

要件は次のとおりです。

  1. アプリを介して、あるデバイスから別のデバイスにデータを送信します。
  2. データの交換は、LAMP サーバーの助けを借りて行われます。デバイスはサーバーに登録されます。つまり、デバイスの「アカウント」がサーバーに登録されます。
  3. デバイス 1 はデータをサーバーに送信し、サーバーはそのデータをデバイス 2 にプッシュします。デバイス 2 にもアプリがあります。

以下は、私が今まで考えていたことです。

  1. アプリを作成する
  2. LAMP サーバーをセットアップする
  3. アプリは、必要なデータをデバイス 1 からサーバーに XML 形式で送信します。
  4. サーバーは XML を受け入れて解析します (DOM または SAX を使用)。XML には、その XML ファイルを転送する必要があるデバイス (デバイス 2) の詳細が含まれます。
  5. XML データをデバイス 2 に転送します。

質問:

  1. 私のアプローチは正しいですか?やったことないので教えてください。私の最も近い経験は、 Parseという Web サービスの使用です。
  2. LAMP サーバーをセットアップするだけで十分ですか? 私はそうは思わない。XML ファイルを受け入れ、解析して転送するアプリケーションをサーバー上に作成する必要があると思います。また、サーバーはすべてのデバイス情報を保存できる必要があります。このアプリケーションはどの言語で作成する必要がありますか? PHP? 機能を実現するために実装できる API/プログラムはありますか?
  3. 目標を達成するには HTTPClient を使用する必要があると思いますよね?
  4. 私の場合、他に何を知る/実装する必要がありますか?

誰かが私の質問に答えてくれたら、本当に感謝します。私はこれで完全な初心者です。ありがとうございました :)

4

2 に答える 2

3

私のアプローチは正しいですか?

あなたは正しい考えを持っていますが、XML としてではなく、POST または GET 要求を介してサーバーにデータを渡すことを望む可能性が高くなります。これらのメソッドを介して値と配列を渡すことができ、xpath などで XML を解析する作業は必要ありません。

モバイル デバイスにデータを返すには XML を使用できますが、現在 API のフォーマットとしては JSON が選択されています。

このアプリケーションをどの言語で作成する必要がありますか

PHP は適切な言語です。他の可能性としては、Ruby on Rails、asp.net、python などがあります (多くのオプション)。

機能を実現するために実装できる API/プログラムはありますか?

GET/POST リクエストを受信し、データベース/フラットファイルにデータを転送することは、使用する言語のコア ライブラリを使用してかなり簡単に行うことができます。

目標を達成するには HTTPClient を使用する必要があると思いますよね?

はい

私の場合、他に何を知る/実装する必要がありますか?

データ サーバー側を保存する方法を決定します。データベースを使用している場合は、データベースをセットアップして SQL について少し調査する必要があります。SQL サーバーにアクセスできない場合は、SQLITE のオプションがあります。 (データベースはポータブル ファイルに保存されます) またはフラットファイルを使用します。

于 2013-07-30T18:54:44.070 に答える
0

これは Android に関する質問なので、単純にアプリ エンジンを使用して appengine 接続型 Android (ACA) を作成してみませんか? https://developers.google.com/eclipse/docs/endpoints-androidconnected-gae

また、簡単に実装できる GCM を使用することもできますhttp://developer.android.com/google/gcm/index.html (デフォルトの ACA プロジェクトには事前に実装されているため)

于 2013-07-30T18:50:31.277 に答える