SharedPreferences в службе FirebaseMessaging (фоновая служба) - PullRequest
0 голосов
/ 04 января 2019

Добрый день,

Моя проблема в том, что данные, которые я получаю от FCM, не сохраняются в SharedPreferences, если я получаю Уведомление о закрытии приложения.

Код:

public class SomeService extends FirebaseMessagingService
{

SharedPreferences prefs;
SharedPreferences.Editor prefsEditor;

@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
    super.onMessageReceived(remoteMessage);

    prefs = this.getSharedPreferences("prefs", MODE_PRIVATE);
    prefsEditor = prefs.edit();

    Map<String,String> data = remoteMessage.getData();

    prefsEditor.putBoolean(Keys.text, Boolean.parseBoolean(data.get("text")));

    prefsEditor.apply();
}

}

1 Ответ

0 голосов
/ 04 января 2019

Если вы не используете FirebaseMessaging Data Message, Firebase не вызывает onMessageReceived в фоновом режиме.onMessageReceived вызывается только на переднем плане.

Вы должны использовать Data Message, чтобы onMessageReceived работал в фоновом режиме

это ссылка, основанная на документах firebase и типах сообщений в firebase здесь

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