1

如何使服务器和客户端配对?

我有一台使用 Google Cloud Messaging 发送消息的服务器。我在 Android 上也有一个客户端,它有一个可以接收的应用程序。

但我需要从客户端获取设备 ID 并将其提供给服务器。有没有其他方法可以配对设备?

我想将多个设备连接到同一台服务器,这可能吗?

谢谢

4

1 回答 1

3

您可以使用 HTTP 调用连同设备 ID(ANDROID_ID 或 IMEI)将 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 回答