android - Unable to register with GCM -
i'm trying initialize sns push services based on gcm push services on android app. app working great on former device, samsung galaxy s5. recently, i've changed phone xiaomi redmi 3s prime. on first time i've installed on new phone i've got error log:
e/gcmtokenhelper: unable register gcm. main_thread java.io.ioexception: main_thread @ com.google.android.gms.iid.instanceid.gettoken(unknown source) @ com.google.android.gms.iid.instanceid.gettoken(unknown source) @ com.amazonaws.mobile.push.gcmtokenhelper.updategcmtoken(gcmtokenhelper.java:79) @ com.amazonaws.mobile.push.pushmanager.registerdevice(pushmanager.java:202) @ com.intap.appme.homeactivity.oncreate(homeactivity.java:237) @ android.app.activity.performcreate(activity.java:6303) @ android.app.instrumentation.callactivityoncreate(instrumentation.java:1108) @ android.app.activitythread.performlaunchactivity(activitythread.java:2376) @ android.app.activitythread.handlelaunchactivity(activitythread.java:2483) @ android.app.activitythread.access$900(activitythread.java:153) @ android.app.activitythread$h.handlemessage(activitythread.java:1349) @ android.os.handler.dispatchmessage(handler.java:102) @ android.os.looper.loop(looper.java:148) @ android.app.activitythread.main(activitythread.java:5441) @ java.lang.reflect.method.invoke(native method) @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:738) @ com.android.internal.os.zygoteinit.main(zygoteinit.java:628)
these lines contains errors mentioned in log:
gcmtokenhelper.java:79
synchronized public void updategcmtoken() { string newdevicetoken; // gcm throws nullpointerexception in failure cases. try { /* 79 line gives me error -> */ newdevicetoken = instanceid.gettoken(gcmsenderid, googlecloudmessaging.instance_id_scope); } catch (final exception re) { final string error = "unable register gcm. " + re.getmessage(); log.e(log_tag, error, re); (gcmtokenupdateobserver observer : updateobservers) { observer.ongcmtokenupdatefailed(re); } return; } log.d(log_tag, "current gcm device token:" + newdevicetoken); final boolean didtokenchange = !newdevicetoken.equals(devicetoken); if (didtokenchange) { log.d(log_tag, "gcm device token changed from: " + devicetoken); devicetoken = newdevicetoken; sharedpreferences.edit() .putstring(shared_prefs_key_device_token, devicetoken) .apply(); } (gcmtokenupdateobserver observer : updateobservers) { observer.ongcmtokenupdate(devicetoken, didtokenchange); } }
pushmanager.java:202
public void registerdevice() { // updates gcm token, triggers {@link #ongcmtokenupdate(string,boolean)} create platform // arn set push enabled, , re-subscribe subscribed topics. /* line 202 gives me error -> */ gcmtokenhelper.updategcmtoken(); }
homeactivity.java:237
final pushmanager pushmanager = awsmobileclient.defaultmobileclient().getpushmanager(); pushmanager.registerdevice();
what can do? on former device worked well, errors when try register device gcm push services.
Comments
Post a Comment