Rejestr Google Cloud Messaging AUTHENTICATION_FAILED

Chcę wypróbować usługę Google Cloud Messaging (GCM) i mam na początku problem.

Dostaję błądAUTHENTICATION_FAILED podczas próby zarejestrowania urządzenia w GCM. Szukałem i wszystko, co znalazłem, to wariacje nieprawidłowego hasła. Moje hasło jest poprawne i używam tylko jednego konta.

Istnieją dwa sposoby wdrożenia klienta GCM na Androida:

Biblioteka GCM z dodatkowym słoikiem, teraz przestarzała.Interfejs API usług Google Play

Zacząłem od drugiej oczywiście i dostałem ten problem.

Myślałem, że problem tkwi w moim telefonie, ale potem postanowiłem spróbować pierwszego sposobu, który zadziałał! Jest to jednak przestarzałe i wymaga dodatkowego słoika, który nie wygląda na właściwy.

Aby zrozumieć przyczyny błędu, zdekompilowałem słoik Usług Google Play i porównałem go z biblioteką GCM.

Okazuje się, że obie mają podobną metodę, coś w rodzaju:

void register(Context context, String senderIds) {
    Intent intent = new Intent("com.google.android.c2dm.intent.REGISTER");
    intent.setPackage("com.google.android.gms"); // this one row are different
    setPackageNameExtra(context, intent);
    intent.putExtra("sender", senderIds);
    context.startService(intent);
}

Różnica w jednym rzędzie:

W bibliotece GCM jestcom.google.android.gsf, gdziegsf to jest Google Services Framework (chyba) i działa!

W jardzie usług Google Play API jest tocom.google.android.gms, I to nie działa (błąd AUTHENTICATION_FAILED).

Następnie w bibliotece GCM zastąpiłem „gsf” na „gms” i uruchomiłem. I mam ten sam błąd AUTHENTICATION_FAILED! Jeśli wprowadzę inny pakiet, to nie działa.

Co muszę zrobić, aby to działało? Czy powinienem ustawić coś w telefonie? Czy jest to błąd w usługach Google Play? Czy ktoś napotkał taki problem?

Z góry dziękuję!

questionAnswers(3)

yourAnswerToTheQuestion