android通知两次启动相同的活动

当我单击状态栏上的通知时,它会启动一个活动,但行为很奇怪.如果我的应用程序在前台,我单击通知,通知意图将被触发一次.如果我的应用程序在后台,那么通知意图会被触发两次.如果我退出应用程序(即通过点击后退按钮弹出所有活动),则会触发通知意图一次.谁能解释这种行为.代码段如下:
_notification = new Notification(icon_id,"Ticker Text",System.currentTimeMillis());
_showActivityIntent = new Intent();
_showActivityIntent.setAction(MyActivityName);
_showActivityIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK + Intent.FLAG_ACTIVITY_NO_HISTORY);
_showActivityPendingIntent = PendingIntent.getActivity(context,_showActivityIntent,0);
_notification.setLatestEventInfo(context,"My title","My text",_showActivityPendingIntent);
_notificationMgr.notify(notificationId,_notification);

解决方法

_showActivityIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

试试这个.它将阻止同一活动的多个实例.你也可以把它放在清单中

相关文章

AdvserView.java package com.earen.viewflipper; import an...
ImageView的scaleType的属性有好几种,分别是matrix(默认)...
文章浏览阅读8.8k次,点赞9次,收藏20次。本文操作环境:win1...
文章浏览阅读1.2w次,点赞15次,收藏69次。实现目的:由main...
文章浏览阅读3.8w次。前言:最近在找Android上的全局代理软件...
文章浏览阅读2.5w次,点赞17次,收藏6次。创建项目后,运行项...