1

我只是好奇从 GCM 类 GCMBaseIntentService 中的 intent.getStringExtra(EXTRA_REGISTRATION_ID) 生成的字符串是否对于每个 android 设备都是唯一的?它是如何产生的?

4

1 回答 1

2

注册 ID 由 GCM 服务器创建,并且对于在特定设备上运行的特定应用程序是唯一的。

你可以在这里阅读更多:http: //developer.android.com/guide/google/gcm/gs.html#android-app

onRegistered(Context context, String regId):在收到注册意图后调用,将GCM 分配的注册 ID 作为参数传递给该设备/应用程序对。 通常,您应该将 regid 发送到您的服务器,以便它可以使用它向此设备发送消息。

在这里:http: //developer.android.com/guide/google/gcm/gcm.html#arch

注册号

GCM 服务器发给 Android 应用程序的 ID,允许其接收消息。一旦 Android 应用程序拥有注册 ID,它就会将其发送到第 3 方应用程序服务器,该服务器使用它来识别已注册以接收给定 Android 应用程序消息的每个设备。换句话说,注册 ID 与运行在特定设备上的特定 Android 应用程序相关联。

此外,该字符串不是由您引用的代码生成的,而是在 GCM 服务器上生成并由该代码从意图中读取。

于 2012-11-30T16:52:25.283 回答