Sagen wir, dass wir Aktivität haben, die lustiges Bild anzeigt und es FunnyActivity nennt. Diese Aktivität kann von MainActivity aus gestartet werden, wobei es sich um die Basisaktivität in der Anwendung handelt, nachdem Sie auf die Schaltfläche geklickt haben. Wir möchten auch einige Benachrichtigungen pushen und wenn der Benutzer auf die Benachrichtigung klickt, sollte FunnyActivity gestartet werden. Also haben wir diesen Teil des Codes hinzufügen:Anwendung von Benachrichtigung öffnen
Intent notificationIntent = new Intent(this, FunnyActivity.class);
notificationIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent intent = PendingIntent.getActivity(this, (int) System.currentTimeMillis(), notificationIntent, 0);
und diese PendingIntent verwendet in Benachrichtigung Builder
setContentIntent(intent)
Natürlich FunnyActivity schön bringt, aber wir wollen MainActivity öffnen, wenn Benutzer-Taste auf FunnyActivity klickt zurück .
Wie können wir das erreichen? Bitte denken Sie daran, dass, wenn der Benutzer zu MainActivity zurückkehrt, er FunnyActivity erneut über die Schaltfläche öffnen kann.
Ich kenne nicht die Standardlösung und das könnte wie ein Hack klingen, aber eines der Dinge, die Sie tun können, überschreiben 'onBackPressed()' in FunnyActivity und starten MainActivity mit richtigen Flags dort. – Shaishav