1
我使用以下代码获取Android设备中的设备令牌。但是,我第一次尝试时得到了空值。设备令牌第一次返回null
GCMRegistrar.checkDevice(this);
GCMRegistrar.checkManifest(this);
String regId = GCMRegistrar.getRegistrationId(this);
if (regId.equals("")) {
GCMRegistrar.register(this, UtilsGcm.GCMSenderId);
}
这里是我的GCM类我用
public class GCMIntentService extends GCMBaseIntentService {
public GCMIntentService() {
super(UtilsGcm.GCMSenderId);
}
@Override
protected void onError(Context context, String regId) {
Log.e("", "error registration id : " + regId);
}
@Override
protected void onMessage(Context context, Intent intent) {
handleMessage(context, intent);
}
@Override
protected void onRegistered(Context context, String regId) {
System.out.println("on registered" + regId);
UtilsGcm.registrationId = regId;
handleRegistration(context, regId);
}
@Override
protected void onUnregistered(Context arg0, String arg1) {
}
}
问题是,它需要时间来生成设备ID如果你试图导航之前,它返回null,你可以请张贴你的gcm类.. –
@George:编辑 –