Я получаю сообщения, но они не отображаются в строке состояния (мое приложение в фоновом режиме 100%) - PullRequest
0 голосов
/ 14 апреля 2019

Я перенес проект в FCM из GCM.Уже внесены изменения на стороне сервера и обновлены все зависимости в мобильном приложении.Но когда я получаю сообщение, оно не появляется в строке состояния, и я не могу понять, почему.

    <service
        android:name="com.SkinPhd.Olympus.fcm.MyFirebaseMessagingService"
        android:exported="false">
        <intent-filter>
            <action android:name="com.google.firebase.MESSAGING_EVENT" />
        </intent-filter>
    </service>

MyFirebaseMessagingService расширяет FirebaseMessagingService:

@Override
public void onMessageReceived(RemoteMessage remoteMessage) {

    Log.d(TAG, "From: " + remoteMessage.getFrom());

    // Check if message contains a data payload.
    if (remoteMessage.getData().size() > 0) {
        Log.d(TAG, "Message data payload: " + remoteMessage.getData());
    }

    // Check if message contains a notification payload.
    if (remoteMessage.getNotification() != null) {
        Log.d(TAG, "Message Notification Body: " + remoteMessage.getNotification().getBody());
    } else {
        Log.d(TAG, "Message getNotification == null");
    }
}

Logcat:

MyFirebaseMsgService: From: 413140669797

MyFirebaseMsgService: Полезная нагрузка сообщения: {push_id = 962, type_item = 0, message = Hello.Это тестовый push., Item_id = -1}

MyFirebaseMsgService: сообщение getNotification == null

Почему remoteMessage.getNotification () == null?Что я делаю не так?

1 Ответ

0 голосов
/ 14 апреля 2019

Решение было найдено: оказалось, что не все так просто с переходом на новую платформу, и обратная совместимость не работает, как пишет об этом наша «хорошая корпорация».Было необходимо изменить логику на стороне сервера, в частности, как написана документация, а не так просто, как документация по миграции на FCM.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...