当前位置: 首页 > news >正文

android开发之Intent.setFlags()_让Android点击通知栏信息后返回正在运行的程序

在应用里使用了后台服务,并且在通知栏推送了消息,希望点击这个消息回到activity,

结果总是存在好几个同样的activity,就算要返回的activity正在前台,点击消息后也会重新打开一个一样的activity,返回好几次才能退出,

而不能像qq之类的点击通知栏消息回到之前存在的activity,如果存在就不再新建一个activity

说的有点绕,如果是遇到此类问题的肯定能懂,没遇到过的估计看不懂我这混乱的表达了.....

经过查阅资料,通过如下方式解决了,

其实主要功劳就是第10行,

public void shownotification(String msg)
    {
        NotificationManager barmanager=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
        Notification notice = new Notification(android.R.drawable.stat_notify_chat,"服务器发来信息了",System.currentTimeMillis());
        notice.flags=Notification.FLAG_AUTO_CANCEL;
        Intent appIntent = new Intent(Intent.ACTION_MAIN);
        //appIntent.setAction(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 contentIntent =PendingIntent.getActivity(this, 0,appIntent,0);
        notice.setLatestEventInfo(this,"通知","信息:"+msg, contentIntent);
        barmanager.notify(STATUS_BAR_ID,notice);
       
    }

相关文章:

  • linux stty命令学习
  • SICP习题 (1.12)解题总结
  • 黑马程序员_Set,TreeSet
  • ios开发之你真的了解了KVC吗?
  • 快速排序算法
  • C# 网络编程之webBrowser乱码问题及解决知识
  • Python 入门教程 8 ---- Python Lists and Dictionaries
  • linux上安装RAC时不使用asmlib的多路径配置
  • HDOJ, 杭电1219, ACme简单字符串题
  • Java RandomAccessFile
  • Sass的准备工作有哪些
  • oracle RAC 10g 升级到11g (out of place) 回退方案
  • 个人站长的生存空间是否越来越小?
  • 弥补两个不足来提升企业站流量
  • 中国象棋程序的设计与实现(高级版)(2012本科毕业论文等重要文档资料)
  • JavaScript 如何正确处理 Unicode 编码问题!
  • JS 中的深拷贝与浅拷贝
  • 【Leetcode】104. 二叉树的最大深度
  • JavaScript DOM 10 - 滚动
  • Vue 动态创建 component
  • 翻译--Thinking in React
  • 规范化安全开发 KOA 手脚架
  • 解决jsp引用其他项目时出现的 cannot be resolved to a type错误
  • 你不可错过的前端面试题(一)
  • 入手阿里云新服务器的部署NODE
  • 再谈express与koa的对比
  • 字符串匹配基础上
  • 没有任何编程基础可以直接学习python语言吗?学会后能够做什么? ...
  • ​​​​​​​​​​​​​​Γ函数
  • ​Base64转换成图片,android studio build乱码,找不到okio.ByteString接腾讯人脸识别
  • ​configparser --- 配置文件解析器​
  • #微信小程序:微信小程序常见的配置传旨
  • (1)(1.13) SiK无线电高级配置(六)
  • (8)Linux使用C语言读取proc/stat等cpu使用数据
  • (Redis使用系列) SpringBoot中Redis的RedisConfig 二
  • (动手学习深度学习)第13章 计算机视觉---微调
  • (十八)SpringBoot之发送QQ邮件
  • (四)【Jmeter】 JMeter的界面布局与组件概述
  • (转)原始图像数据和PDF中的图像数据
  • .NET CF命令行调试器MDbg入门(一)
  • .net core 客户端缓存、服务器端响应缓存、服务器内存缓存
  • .net mvc actionresult 返回字符串_.NET架构师知识普及
  • .NET 程序如何获取图片的宽高(框架自带多种方法的不同性能)
  • .php文件都打不开,打不开php文件怎么办
  • /etc/skel 目录作用
  • [ SNOI 2013 ] Quare
  • [@Controller]4 详解@ModelAttribute
  • []指针
  • [23] GaussianAvatars: Photorealistic Head Avatars with Rigged 3D Gaussians
  • [Angular] 笔记 8:list/detail 页面以及@Input
  • [AutoSar]BSW_Memory_Stack_004 创建一个简单NV block并调试
  • [BT]小迪安全2023学习笔记(第15天:PHP开发-登录验证)
  • [BZOJ1008][HNOI2008]越狱
  • [C#基础知识系列]专题十七:深入理解动态类型
  • [EFI]Acer Aspire A515-54g电脑 Hackintosh 黑苹果efi引导文件