我想使用GCM,除差分设备上的GCMRegistrar.getRegistrationId调用外,一切正常。我在模拟器上运行了这段代码,并且2个不同的手机和GCMRegistrar.getRegistrationId总是返回相同的字符串。我预计它会在每个设备上有所不同,但事实并非如此。难道我做错了什么?这是我正在使用的代码(取自文档)。Android GCM-每次在不同的设备上注册相同的注册ID
GCMRegistrar.checkDevice(context);
final String regId = GCMRegistrar.getRegistrationId(context);
if (regId.equals("")) {
GCMRegistrar.register(activity, "123456789012"); //sender id/api project id
} else {
LogUtil.info("Already registered");
}
当我第一次跑这在模拟器上GCMRegistrar.getRegistrationId返回“”但在随后的调用返回大的ID。这就说得通了。奇怪的是,当在两部手机上运行相同的代码时,它们都返回了相同的ID(模拟器返回的那个),从未运行过此应用程序。