Ich versuche zu migrieren GCM
und habe ein Problem mit dem, was SENDER_ID
ich bereitstellen muss. Ich benutze das Demo-Projekt von Google. In diesem Projekt muss ich, wenn ich das gut verstehe SENDER_ID
, der Anwendung in der Datei CommonUtilities.java eine bereitstellen.
Die von mir angegebene SENDER_ID ist der API-Schlüssel, den ich unter https://code.google.com/apis/console/ registriert habe und der folgende Form hat: AIzaSyAxxxxxxx_xxxxxxxxxxxnoGZw
(insgesamt 40 Zeichen).
Wenn SENDER_ID
ich diese Zeichenfolge bei "BroadcastReceiver mHandleMessageReceiver" verwende, wird eine Fehlermeldung angezeigt: Von GCM: Fehler (INVALID_SENDER). .
Wo ist der Fehler? Die Zeichenfolge, die ich zur Verfügung stelle, ist nicht die SENDER_ID
?
Vielen Dank.
Antworten:
Nein, die SENDER_ID ist die Projekt-ID, die Sie an der Google API-Konsole angemeldet haben. Sie sollte eine numerische Zeichenfolge sein. Beispiel: In Ihrem Browser-URI sollte Folgendes angezeigt werden:
https://code.google.com/apis/console/#project:4815162342
Die Absender-ID lautet 4815162342
Aktualisierte Antwort:
Google hat seine Dokumente nicht vollständig aktualisiert. Die obige Antwort ist alt und basiert auf dieser Dokumentation und es scheint, dass sie immer noch nicht aktualisiert wird.
Laut aktualisierten Google-Dokumenten wird anscheinend die Projektnummer in der Google API-Konsole als SENDER-ID verwendet
quelle
Ich habe für die neueste Google API-Konsole getan .
Wie bekomme ich
SenderId
:Schritte :
SenderId
Form bekommenReferenz:
Hoffe das wird dir helfen.
quelle
Wechseln Sie zu Ihrer Google APIs Console-Seite . Wählen Sie das verwendete Projekt aus dem Dropdown-Menü links aus. Wählen Sie Übersicht und jetzt können Sie sehen
project number
. Es ist das, wasSENDER_ID
Sie verwenden müssenEine andere Möglichkeit, Ihre Projektnummer zu erhalten, besteht darin, den Wert von "Projekt" von Ihrer URL abzurufen. Ihre URL muss folgendermaßen lauten: " https://code.google.com/apis/console/b/0/#project:886025556782 ". Hier lautet die Projektnummer "886025556782". Diese Nummer ist SENDER_ID
quelle
Eine aktualisierte Antwort ab November 2014, WENN SIE ZULETZT EIN API-PROJEKT ERSTELLT HABEN .
Richtig, zuerst sollten Sie unbedingt zur Google Developers Console gehen und das Projekt suchen, für das Sie GCM aktiviert haben. Wenn Sie sich den Abschnitt Übersicht (linkes Navigationsfeld) ansehen, sehen Sie auf der rechten Seite die Projekt-ID und die Projektnummer. Die Projekt-ID ist für mich fehlgeschlagen (was mich hierher geführt hat), aber als ich die Projektnummer ausprobiert habe, kann ich meine Kunden jetzt korrekt registrieren.
Beachten Sie, dass dies anders ist, da Google kürzlich die Zuweisung von Projekt-IDs geändert hat. Im Oktober habe ich ein Projekt erstellt und eine rein numerische Projekt-ID erhalten, von der ich annehme, dass sie gut funktionieren würde. Aber die, die ich heute erstellt habe, erhielt eine Zwei-Wort- und eine Nummern-ID (wie Hamster-Party-420) und eine numerische Projektnummer. Die URL zu meinem Projekt enthält Hamster-Party-420, und die Projektnummer ist nur auf dem Übersichtsbildschirm sichtbar.
quelle
Noch eine aktualisierte Antwort mit wenig mehr Erklärung für die Verwirrung (.. wie ich) (mit gebührender Anerkennung an @azgolfer, @PankajAndroid und @Adam)
1- Wenn Sie ein Projekt unter https://console.developers.google.com erstellen , sehen Sie in der Projektübersicht zwei Dinge: "PROJEKT-ID" und "PROJEKTNUMMER". Die Projekt -ID ist nicht mehr numerisch, sondern alphanumerisch wie master-xxxxx-1234 . Die Projektnummer ist eine 11-stellige Nummer wie 123456789100.
2- Selbst wenn Sie den Browser-Link überprüfen, finden Sie ihn als: https: // console.developers.google.com / project / master-xxxxx-1234
Ist master-xxxxx-1234 also die SENDER_ID (an einigen Stellen als PROJECT ID bezeichnet)? NEIN.
Sie müssen die Projektnummer als Projekt-ID in GCM verwenden.
3- Wo können Sie überprüfen, ob die Projekt-ID als Projekt-ID verwendet wird?
Auf API Dashbaord. (URL: https://code.google.com/apis/console/b/0/?noredirect#project:12345678900 - wobei 12345678900 Ihre Projektnummer im Projekt-Dashboard ist.
ZUSAMMENFASSUNG: Die Projekt- ID im Projekt-Dashboard und im API-Dashboard ist unterschiedlich. Die Projektnummer im Projekt-Dashbaord wird als Projekt-ID im API-Dashboard und die Projekt-ID im Projekt-Dashbaord als Projektname im API-Dashboard verwendet. Daher wird die Projektnummer, die im Projekt-Dashboard angezeigt wird, wenn wir ein Projekt in der Entwicklerkonsole erstellen, in GCM als SENDER_ID verwendet.
quelle
Gehen Sie in der neuesten Version der Entwicklerkonsole zu "Dashboard", klicken Sie auf den Dropdown-Pfeil unter "Projekt: Turtle Power" und Sie können die Projektnummer genau dort sehen! Verwenden Sie das als Ihre SENDER_ID
(gefälschtes Projekt, also versuche es nicht einmal = P)
quelle
Möglicherweise haben Sie Google Cloud Messaging für Android in API COnsole nicht aktiviert. Hier ist die Anleitung:
http://developer.android.com/google/gcm/gs.html
quelle
Wir haben Stunden damit verbracht, dies herauszufinden. Das Problem war, dass unser Android-Manifest die Absender-ID nicht enthielt!
quelle
Wenn Sie hierher gekommen sind, weil Sie Web-Push, Android-Push oder ähnliches ausführen, gibt es eine andere Antwort.
Quelle: https://firebase.google.com/docs/cloud-messaging/js/client
quelle
Die von Ihnen verwendete SENDER_ID ist nichts anderes als der Autorisierungsschlüssel. Sie finden die SENDER_ID unter der URL der Google APIs Console-Seiten Ihres Projekts
https://code.google.com/apis/console/#project:8543162367
Hier wird 8543162367 Ihre SENDER_ID sein, und auch die Projekt-ID ist nicht mehr numerisch, sondern alphanumerisch oder nur noch numerisch oder nur alphabetisch, aber ihre Position ist dieselbe wie von mir gezeigt
quelle