1

サーバーとクライアントをペアにする方法を教えてください。

Google Cloud Messaging を使用してメッセージを送信するサーバーがあります。また、アプリを受け取る準備ができている Android のクライアントもあります。

しかし、クライアントからデバイス ID を取得してサーバーに渡す必要があります。デバイスをペアリングする他の方法はありますか?

複数のデバイスを同じサーバーに接続したいのですが、可能ですか?

ありがとう

4

1 に答える 1

3

デバイス ID (ANDROID_ID または IMEI) とともに HTTP 呼び出しを使用して、GCM 登録 ID をデバイスからサーバーに送信できます。サーバーは、デバイスとその GCM 登録 ID の間のマッピングを保持できます。サーバーから GCM を送信する場合: GCM regId、サーバー キー、およびプロジェクト ID を使用します。

最初のアクティビティで:

if (regId.equals(""))
{
    GCMRegistrar.register(this, Constants.GCM_SENDER_ID);
}
else
{
// Send "regId" to server (e.g. using http)
}

GCMIntentService クラスで:

protected void onRegistered(Context arg0, String arg1)
{
    // Send arg1 to server along with some device Id (e.g. ANDROID_ID or IMEI)
}

はい、異なるデバイスをサーバーとペアリングすることは可能です。サーバーと数百台のデバイスをペアリングしました。

編集:

コードからの URL に続くデバイス呼び出し: http://www.example.com/updateGcm?id= &gcmId=

サーバーは、マッピングをデータベース テーブルに保存/更新するだけです。残念ながら、正確なサーバー側のコードを提供することはできません。PHPサーバーを使用しています(サーバーに提供されているjarは使用していません)

于 2012-08-08T09:44:23.843 に答える