Я борюсь с этой проблемой: у меня есть некоторые уведомления, и я хочу передать намерения в действие, даже если приложение уже запущено.Направляйте намерения, если активность запущена
Некоторые решения, которые я нашел здесь на S.O. не работает для меня, как добавление:
android:launchMode="singleTop"
к манифесту, я также использую это:
notificationIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
, как кто-то предложил.
Мой код заключается в следующем:
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(NotificationService.this);
mBuilder.setSmallIcon(R.mipmap.ic_launcher);
mBuilder.setContentTitle("New website change.");
mBuilder.setContentText("Changed: " + url);
Intent notificationIntent = new Intent(getContext(), MainActivity.class);
Bundle b = new Bundle();
b.putString("key", url);
notificationIntent.putExtras(b);
notificationIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
PendingIntent intent = PendingIntent.getActivity(getContext(), id, notificationIntent, 0);
mBuilder.setContentIntent(intent);
NotificationManager mNotificationManager = (NotificationManager) getSystemService(NotificationService.this.NOTIFICATION_SERVICE);
mNotificationManager.notify(id, mBuilder.build());
А потом внутри деятельности:
Bundle b = getIntent().getExtras();
if(b != null) {
url = b.getString("key");
editText.setText(url);
webView.loadUrl(url);
webView.requestFocus();
}
Любая помощь будет приветствоваться, я выпущу код этого приложения с открытым исходным кодом, спасибо.
это не ясно, что делать вам ж чтобы достичь. –
У меня есть URL-адреса в уведомлениях, и я хочу открыть его для активности, которая имеет веб-представление. Если действие не запущено (например, выполняется другое действие), уведомление может отправлять свои дополнительные функции, а если действие находится на переднем плане, оно не может получить дополнительные функции (в этом случае URL-адрес). –
http://stackoverflow.com/questions/40021484/fcm-notification-using-android-studio/40021597#comment67322451_40021597 –