Я создаю приложение и решил использовать облачные сообщения Firebase. У меня проблема в том, что я понятия не имею, как обрабатывать получаемые мной уведомления. Насколько я знаю, когда вы открываете уведомление из фона, вы получаете намерение с данными, отправленными с сервера в активности запуска. Итак, у меня есть что-то подобное в моей деятельности по запуску:
Intent intentOpen;
String message = getIntent().getStringExtra("message");
if(message != null) {
intentOpen = new Intent(this, MainActivity.class);
if (message.equals(this.getResources().getString(R.string.new_shared_file))) {
intentOpen.putExtra(MainActivity.nType, "SHARING");
} else {
intentOpen.putExtra(MainActivity.nType, "SERVICES");
}
}
}
И в своей основной деятельности я хочу получить nType, чтобы определить, какой фрагмент должен открыть приложение:
public static String nType = "notification_type";
if (getIntent().hasExtra(nType)) {
String notification = getIntent().getStringExtra(nType);
if (notification.equals("SHARING")) {
displayView(R.id.nav_shared_files);
} else {
displayView(R.id.nav_account);
}
} else if (savedInstanceState == null) {
displayView(R.id.nav_online_files);
}
Итак, как мне перенести строку в основное занятие (которое я получаю после двух других занятий). Или есть какой-то другой способ (например, со стороны сервера), чтобы получить строку для основного действия?
Спасибо за ваши ответы заранее.