我正在将我的Android应用程序从C2DM迁移到GCM。我有服务器端设置来接收两者都是指示GCM与C2DM的ID,然后在服务器端,我通过相应的服务发送出去,具体取决于它所注册的服务。迁移到GCM,但仍然有C2DM注册ID
我遇到的问题是,应用程序正在以我的服务器注册为GCM(应用程序更新使用新的发件人ID在意图。)但不幸的是,它传递给服务器的ID注册ID实际上是旧的C2DM ID。
作为此迁移的一部分(在应用程序代码中),我需要做些什么来确保获得新的(GCM)ID,而不是继续使用现有的C2DM注册ID。这对我来说很容易测试和重现,并且每次都会得到一致的结果(来自GCM服务器的MisMatchedSenderId)。我需要先注销C2DM ID吗?
注意显示您在应用程序中用于注册GCM的代码? – Femaref
public static void register(Context context, String senderId){ Intent registrationIntent = new Intent(REQUEST_REGISTRATION_INTENT); registrationIntent.putExtra(EXTRA_APPLICATION_PENDING_INTENT, PendingIntent.getBroadcast(context,0,new Intent(),0)); registrationIntent.putExtra(EXTRA_SENDER,senderId); context.startService(registrationIntent); } –