I looked here:
https://developers.google.com/cloud-messaging/android/android-migrate-fcm#remove_registration

It says that we no longer need, but this:
https://github.com/aerogear/aerogear-android-push/blob/3.0.1/aerogear-android-push/src/main/java/org/jboss/aerogear/android/unifiedpush/gcm/AeroGearGCMPushRegistrar.java#L144-L148

was replace with explicit FCM getToken() call:
https://github.com/aerogear/aerogear-android-push/blob/4.0.0/aerogear-android-push/src/main/java/org/jboss/aerogear/android/unifiedpush/fcm/AeroGearFCMPushRegistrar.java#L143-L147

I think I am a bit over asked here, on the Android internals...

Also, looks like we are not the only ones, seeing that problem :) 
http://stackoverflow.com/questions/37836383/android-firebase-token-is-null-on-first-run



 

On Sun, Jun 19, 2016 at 8:39 PM, Matthias Wessendorf <matzew@apache.org> wrote:
Looking at the JavaDoc for the getToken():
https://developers.google.com/android/reference/com/google/firebase/iid/FirebaseInstanceId.html#public-methods

"the master token or null if the token is not yet available"

looks like on the android lib we should not have it return null ?

On Sat, Jun 18, 2016 at 3:17 PM, Matthias Wessendorf <matzew@apache.org> wrote:
Hi,

when I launch a fresh and clean Cordova app (I am unable to reproduce this on our native Android HelloWorld), and open it the first time for registration, I am receiving a 400 status code from the server.

Uninstalling the app, and launching it again, show the the problem again, ONLY on Cordova...

This means either the deviceToken from Android is null or invalid (according to the pattern):

Doing some debugging, on the server, I see the provided token is actually null.

Is there a race condition or so on the client, for the initial launch of the app ? 

I added some logging on the client (see [1]), and indeed, it looks like, on Cordova, it is actually null:

Now... a few lines above... I see 'outdated' c2dm packages/permissions, and a GCM: "Missmatched messenger", it looks like something is still not correct.

Any thoughts ? 

-Matthias 




--



--
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
twitter: http://twitter.com/mwessendorf