Android - Clicking on notification in status bar binds the intent with the target activity

Posted by araja on Stack Overflow See other posts from Stack Overflow or by araja
Published on 2010-03-25T10:38:13Z Indexed on 2010/03/25 10:43 UTC
Read the original article Hit count: 367

Filed under:
|

I have created an activity which sends a number of notifications to status bar. Each notification contains an intent with a bundle. Here is the code:

String ns = Context.NOTIFICATION_SERVICE;
NotificationManager mNotificationManager = (NotificationManager) getSystemService(ns);
int icon = R.drawable.icon;     
long when = System.currentTimeMillis();
Notification notification = new Notification(icon, "Test Notification", when);


Context context = getApplicationContext();      

Bundle bundle = new Bundle();
bundle.putString("action", "view");
Intent notificationIntent = new Intent(this, MainActivity.class);
notificationIntent.putExtras(bundle);

PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, Intent.FLAG_ACTIVITY_NEW_TASK);
notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);     
mNotificationManager.notify(1, notification);


When user clicks this notifications, I read the bundle string "action" and performs that action. Here is the code:

Bundle bundle = this.getIntent().getExtras();

if(bundle != null)
{
    String action = bundle.getString("action");
        performAction(action)
}

Everything works as expected. But, when I minimize the app using "arrow" button on device and then press and hold home button and clicks on my app icon the application starts and performs the same last action which have been performed by clicking the last notification. I figured out that when we click the app icon the application starts with last intent triggered by the notification. Can anyone help in this?

© Stack Overflow or respective owner

Related posts about android

Related posts about android-sdk