Android 点击通知栏图标 返回已经运行的程序,而不开启一个新的Activity

很多网上关于 通知栏的例子都是打开一个新的Activity,代码也很多。

如果要实现点击通知图标返回已经运行的程序,我只贴出关键的部分代码。

public void showNotify() {
Notification notification = new Notification(); 
NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);


notification.icon = R.drawable.appicon; //你自己的资源图片
Context mContext = getApplicationContext();
Intent appIntent = new Intent(Intent.ACTION_MAIN);
appIntent.addCategory(Intent.CATEGORY_LAUNCHER);
appIntent.setComponent(new ComponentName(this.getPackageName(), this.getPackageName() + "." + this.getLocalClassName()));
appIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK| Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);//关键的一步,设置启动模式


PendingIntent intent = PendingIntent.getActivity(mContext, 0,
appIntent, 0);
notification.setLatestEventInfo(getApplicationContext(),
getString(R.string.app_name), "", intent);


notificationManager.notify(0, notification);
}


     在真测试时会遇到一个问题:当你安装包在手机上安装时(不是连接在电脑上用Run As运行的), 安装完成后点击 【打开】按钮进入程序后,再点击通知栏上的图标,就会导致运行一个新的Activity,而且原来运行的Activity也在运行。

    这种问题只会出现在第一次安装后立即运行时,但是覆盖安装并不会有这样的情况。我也还找不到办法解决,如果有朋友解决了 分享下。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值