I'm well impressed with Google's reply so far. They replied really quickly and I wasn't expect them to offer any help if I'm honest. Here's one of their replies so far:
Thanks for the link and how to find it. The blacklisting being described there is when you are sending messages too fast.
Generating tokens should not generate such error. I am also quite confused when you said that "I had a loop that was
continuously calling for a token until one was returned.", are you generating multiple tokens for one user? Or when you
got "BLACKLISTED" token you will generate new ones until you receive a token?
If your users are returning a BLACKLISTED token, then this is unlikely an issue on your end, but instead on our end.
Let me verify this through investigation, though. Apologies for the inconvenience. Let me file this as a bug so that our engineers can take a look at it.
Could you send the following so that we can investigate the issue on our end?
package name of your app
sender ID
To answer the following questions:
1. Will users currently flagged as BLACKLISTED eventually reset and return a valid token.
Users who experienced this before has it working after waiting for some time.
2. Are they blacklisted from all apps now? Seems really harsh if so.
This usually occurs in an emulator, but after some time they should be able to generate proper tokens.
3. Is it my app that's now blacklisted and any user attempting to call for a token will get BLACKLISTED even if there is a delay between each call?
The app is not BLACKLISTED. I need more time to investigate the issue, but this issue is very unlikely due to the rate of token generation as I've
stated before.
4. Can it be reset from your side?
Your users should be able to generate a proper token after some time.
Apologies if some statements were quite vague as I really need to investigate more on this issue in order to conclude what is happening.
We received issues like this before but we cannot replicate it on our end and the issue goes away after some time. I will keep you posted with the result.
I still don't have anymore downloads of my beta update so I can't tell if the change of code I applied has fixed the problem but I will keep monitoring and will update with anymore news I hear from Google and with the code I've used if it looks like it's working.
I don't think it's got anything to do with the PHP pages that include the PHP function TGC wrote because there's quite a large delay between each time those pages are accessed by the same user.