Zaimplementowałem swoją podklasę FirebaseMessagingService i pomyślnie otrzymuję wiadomości niższego rzędu w FirebaseMessagingService.onMessageReceived(RemoteMessage)
. Mój problem polega na tym, że RemoteMessage.getMessageId()
zawsze zwraca null
. Z tego co zrozumiałem, identyfikator wiadomości jest obowiązkowy i powinien być generowany automatycznie przez serwer FCM. W rzeczywistości wywołanie https://fcm.googleapis.com/fcm/send
zwraca identyfikator wiadomości, po prostu nie mogę uzyskać do niego dostępu po stronie aplikacji.FCM Android - identyfikator pustej wiadomości
Czy jest coś, czego mi brakuje?
Oto mój FCM klasy usługi wiadomości:
public class FcmMessagingService extends FirebaseMessagingService {
private static final String TAG = "FcmMessagingService";
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
Logg.d(TAG, "Received message; id: " + remoteMessage.getMessageId());
Map<String, String> data = remoteMessage.getData();
Logg.d(TAG, "Data: " + data);
String message = data.get("message");
/* ... */
}
}
Czy możesz opublikować swoją klasę "FirebaseMessagingService"? –
To tylko podstawowe minimalne wdrożenie, ale proszę bardzo. – SpaceBison
Okaay .. Przepraszam. Wciąż się rozglądam. Jestem trochę zmieszany. Gdzie znaleziono * identyfikator wiadomości jest obowiązkowy i powinien być automatycznie generowany przez serwer FCM. *? Czy możesz podać przykładowy komunikat, który otrzymujesz, wywołując 'https: // fcm.googleapis.com/fcm/send'? :) –