I want to open last started activity by tapping on the notification in status bar. Suppose I start an Activity A (main activity of my app), this activity sends a notification to notification status bar. activity A also opens an activity B and B opens another activity C. From C i press home button. Now i want to go again to my app so from notification bar i tap on notification (which was sent by A). Here the notification should start activity C because it was last opened.
I did search on this but didn't find proper answer. Thanks in advance.
Few days back I got very very simple solution for my problem. Instead of iterating through recentTasks
and getting our task and then getting baseIntent
through it, we can do simple thing as follows:
Intent notificationIntent = new Intent(context, MainActivity.class);
notificationIntent.addCategory(Intent.CATEGORY_LAUNCHER);
notificationIntent.setAction(Intent.ACTION_MAIN);
baseIntent
contains the same parameters as above Intent
has. Hence instead of grabbing baseIntent
from recentTasks
, it's quite good to use above code.
This notificationIntent
will then be passed to pendingIntent
for further use.
Provided: MainActivity
is the very first activity when we launch our app and in AndroidManifest.xml it must contain IntentFilters
of CATEGORY_LAUNCHER
and ACTION_MAIN
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With