koti
koti

Reputation: 1071

Pushnotification not removed from notificationbar in android

In my application i received push notification from gcm, if i click on that push notification, my application will open and i need to remove my notification from notification bar. But , it is still on notification bar.

I used the following logic for generating push notification in my GCMIntentService class.

       mNotificationManager = (NotificationManager)
                this.getSystemService(Context.NOTIFICATION_SERVICE);

        //PendingIntent contentIntent = PendingIntent.getActivity(this, 0,  new Intent(this, TipsActivity.class), 0);
        PendingIntent contentIntent = PendingIntent.getActivity(this, 0, new Intent(this, TipsActivity.class), 
                Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_CLEAR_TASK);
        NotificationCompat.Builder mBuilder =
                new NotificationCompat.Builder(this)
        .setSmallIcon(R.drawable.icon)
        .setContentTitle("Appname")
        .setStyle(new NotificationCompat.BigTextStyle()
        .bigText(msg))
        .setContentText(msg);

        mBuilder.setContentIntent(contentIntent);
        mNotificationManager.notify(NOTIFICATION_ID, mBuilder.build());

So, please guide me how to remove my notification , when i click on it.

Upvotes: 1

Views: 159

Answers (2)

as per my guessing it is happening due to flag of notification

may be there is line in your code related to notification flag may be that flag is FLAG_NO_CLEAR so change that flag to FLAG_AUTO_CANCEL

you will find this flag in generateNotification logic if you not mentioned the flag then please specify it as FLAG_AUTO_CANCEL

FLAG_NO_CLEAR means

Bit to be bitwise-ored into the flags field that should be set if the notification should not be canceled when the user clicks the Clear all button

and

FLAG_AUTO_CANCEL means

Bit to be bitwise-ored into the flags field that should be set if the notification should be canceled when it is clicked by the user.

here is the sample line

notification.flags |= Notification.FLAG_AUTO_CANCEL;

where notification is object of NotificationManager use this link for refference

hope it will resolve your issue happy coding

Upvotes: 0

Sivakumar
Sivakumar

Reputation: 633

Hi You have to add the following line>..

mBuilder.setAutoCancel(true); 

Try this and let me know the feedback.

Upvotes: 2

Related Questions