我想使用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(模擬器返回的那個),從未運行過此應用程序。