Jestem zdezorientowany w związku między identyfikatorem rejestracji a tokenami. W samouczku dotyczącym GCM od Google rejestrujemy na początku identyfikator rejestracji. Dostajemy jednak także token. Teraz na diagramach wysyłamy identyfikator rejestracji do docelowego serwera. Czy jednak wysyłamy również token? Wiem, że token pochodzi z identyfikatora rejestracji. Czy token jest używany jako mechanizm uwierzytelniania między GCM a aplikacją, a serwer nigdy nie wie o tokenie?Google GCM, token kontra identyfikator rejestracji
Odpowiedz
Jeśli szukasz podstawowej wiedzy na temat Google Cloud Messaging, IMO, można zapoznać się z poniższym:
Zasadniczo trzeba zrobić etapy:
- Utwórz nowy projekt w Google Developers Console. W tym kroku dla uproszczenia wystarczy wziąć pod uwagę 2 wartości:
Project Number
, które zostanie użyte jakoSENDER_ID
w projekcie klienta; iAPI server key
(utworzony w poświadczenia), które będą wykorzystywane jakoAPI_KEY
w projekcie serwera. - Utwórz nowy prosty projekt Android po stronie serwera (podstawowym kodem źródłowym jest moja odpowiedź w poniższych odsyłaczach).
- Utwórz nowy prosty projekt dla Androida po stronie klienta (podstawowym kodem źródłowym jest moja odpowiedź w poniższych odsyłaczach, dostosowałem z oryginalnego źródła pod adresem Google Cloud Messaging - GitHub).
- Uruchom aplikację kliencką, otrzymasz token rejestracji (oznacza, że Twoje urządzenie pomyślnie zarejestrowało numer). Następnie wklej (kod twardy) ten token w zmiennej
CLIENT_REGISTRATION_TOKEN
w aplikacji serwera (lub wpisz kod, aby wysłać token do aplikacji serwera).
można przeczytać więcej na następujące pytania, jeden z nich przeczytałeś wcześniej z jednej z poprzednich pytań:
- How to implement a GCM Hello World for Android using Android Studio
- Adding Google Cloud Messagin (GCM) for Android - Registration process
Dla więcej informacji:
Key Concepts z Google Cloud Messaging: Overview
poświadczenia
- Sender ID Unikalna wartość liczbowa stworzony podczas konfigurowania projektu API (podaną jako "Project" w konsoli Google Developers). Identyfikator nadawcy jest używany w procesie rejestracji do identyfikacji serwera aplikacji, który może wysyłać wiadomości do aplikacji klienckiej.
- Klucz interfejsu API Klucz API zapisany na serwerze aplikacji, który daje serwerowi aplikacji autoryzowany dostęp do usług Google. W HTTP klucz API to zawarty w nagłówku żądań POST, które wysyłają wiadomości.W XMPP, klucz API jest używany w żądaniu uwierzytelnienia SASL PLAIN jako hasło do uwierzytelnienia połączenia. Klucz interfejsu API uzyskasz, gdy skonfigurujesz projekt interfejsu API pod numerem .
- Token rejestracyjny Identyfikator wydany przez serwery połączeń GCM do aplikacji klienckiej, który umożliwia odbieranie wiadomości. Pamiętaj, że tokeny rejestracji muszą być utrzymywane w tajemnicy.
Mam nadzieję, że to pomoże!
GCM używa teraz koncepcji InstanceID, która reprezentuje pojedynczą instalację aplikacji na urządzeniu (Android lub iOS). Każdy identyfikator instancji może wydać kilka tokenów. Te żetony służą do identyfikacji identyfikatora wystąpienia i mogą wygasnąć oraz zostać odświeżone.
Na urządzeniu klienckim zainicjujesz identyfikator instancji, a następnie za pomocą tego identyfikatora instancji otrzymasz numer generate a token (token rejestracji). Wysyłasz token na serwer, który używa tokena do wysyłania wiadomości do InstanceID (zainstalowana aplikacja). Jeśli token zostanie unieważniony z dowolnego powodu, np. Gdy aplikacja zostanie odinstalowana lub zostanie naruszony token, a new token should be generated i wysłany na twój serwer.
Czasami użytkownik wyjaśnia to lepiej niż google, nie wiem, czy to takie proste. dzięki. –
ja wciąż z powodzeniem rejestracji z rejestracją metodą Id do dnia 11 maja 2016
if (checkPlayServices()) {
gcm = GoogleCloudMessaging.getInstance(this);
regid = getRegistrationId(context);
if (regid.isEmpty()) {
registerInBackground();
}
} else {
Log.i(TAG, "No valid Google Play Services APK found.");
}
APA91bHLUfr71D6K7VTrRH3LGiLFxGNr3qRi3xOB_yNl0fLYsqhlgYXxHzOhQx2WKgqZI3sqxa1ZPORa0-5YBZ1_OFLm9cEg1bTh7wtrpCsHW91MSs2BMIXrHEqyjj2TeoVxnAzA5U8s
- 1. Czy identyfikator rejestracji GCM wygasa?
- 2. Co to jest identyfikator rejestracji GCM?
- 3. GCM - Maksymalna długość dla identyfikatora rejestracji
- 4. Android Google Cloud Messaging (GCM) i identyfikator braku nadawcy
- 5. Django Rest Framework - zwróć identyfikator użytkownika i token po rejestracji
- 6. Uzyskiwanie identyfikatora rejestracji GCM przy użyciu Firebase
- 7. Jak analizować GCM reagować, aby usunąć nieprawidłowy identyfikator rejestracji z serwera z php
- 8. Identyfikator projektu Android GCM, który?
- 9. Żądanie identyfikatora rejestracji Google Cloud Messaging (GCM) przy każdym uruchomieniu aplikacji
- 10. jak uzyskać identyfikator projektu Google i identyfikator aplikacji pushwoosh?
- 11. Konto Google dostaje Token
- 12. Nieautoryzowane podczas nawiązywania połączenia z Google GCM
- 13. Powielone wiadomości GCM
- 14. Kod odpowiedzi HTTP 401 w Google GCM
- 15. C2DM DO Google Cloud Messaging (GCM)
- 16. Google Maps api dla strony rejestracji Android
- 17. Wiadomość Android GCM dla jednego urządzenia na inne
- 18. GCM Nieprawidłowy błąd nadawcy
- 19. nie można znaleźć tokena w błędzie pamięci podręcznej GCM iOS
- 20. Unieważnij wszystkie tokeny gcm
- 21. Asynchroniczne reklamy Google kontra Synchroniczne
- 22. Ninject: Rozwiązywanie obiektu według nazwy typu rejestracji _i_/identyfikator
- 23. Dysk Google - Identyfikator katalogu głównego
- 24. Ograniczanie powiadomień GCM/FCM poprzez wyrejestrowanie
- 25. Awaria generowania tokenu Google Cloud Messaging (GCM) po aktualizacji usług Google Play związanej z Firebase
- 26. Google CCS (GCM) - projekt nie znajduje się na białej liście
- 27. Łączenie się z serwerem GCM działającym na lokalnym serwerze
- 28. Czy mój token Google oAuth2 wygląda prawidłowo?
- 29. Android - jak zdobyć token Google Access?
- 30. Token null Zaloguj się Konto Google
Ok, więc serwer dba tylko o identyfikatorze rejestracji. W ogóle nie obchodzi go token. – mrQWERTY
Token rejestracji = identyfikator rejestracji, który znajduje się w aplikacji klienckiej, następnie musisz podać go aplikacji serwera – BNK
Być może masz na myśli SENDER_ID, co, jak powiedziałem w 1. kroku – BNK