意图 - 如果活动正在运行,则将其置于前面,否则启动一个新活动(从通知中)

2023-12-02

我的应用程序有通知,显然,没有任何标志,每次都会启动一个新活动,因此我会得到多个相同的活动在彼此之上运行,这是错误的。

我想要它做的是将通知挂起意图中指定的活动带到前面(如果它已经在运行),否则启动它。

到目前为止,我对该通知的意图/待处理意图是

private static PendingIntent prepareIntent(Context context) {
    Intent intent = new Intent(context, MainActivity.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);

    return PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
}

奇怪的是,它有时有效,有时无效......我觉得我已经尝试了所有标志组合。


你可以使用这个:

<activity 
   android:name=".YourActivity"
   android:launchMode="singleTask"/>

其工作原理类似于"singleInstance"但它不会有那种奇怪的动画。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

意图 - 如果活动正在运行,则将其置于前面,否则启动一个新活动(从通知中) 的相关文章

  • 为什么 Kotlin 数据类可以在 Gson 的不可空字段中包含空值?

    在 Kotlin 中你可以创建一个data class data class CountriesResponse val count Int val countries List
  • Android studio 在日志猫中“清除全部”,更改日志级别过滤器时日志仍然会回来

    在 LogCat 中 当我单击 全部清除 按钮时 它似乎清除了所有日志 但是 如果我更改日志级别并返回到之前的日志级别 则所有日志都会返回 例如 我正在查看 Verbose 我选择 全部清除 日志清除 我切换到 调试 我切换回 详细 现在所
  • Mailgun POST /messages API 总是抛出 401 禁止

    我正在尝试使用改造库在 Android 中发送 Mailgun POST messages API 请求 以下是改装要求 HTTP POSThttps api key xxx v3 sandboxxxx messages https api
  • 更改 AChartEngine 中的图例大小

    我想专门更改饼图的图例大小输出 我已经尝试了所有可以找到的 AChartEngine 方法 但没有一个只能更改图例文本大小 我必须重写 onDraw 函数吗 如果是这样 怎么办 要设置图例高度 请使用 renderer setLegendH
  • 将标题设置为操作栏时出现空指针异常

    Error Caused by java lang NullPointerException Attempt to invoke virtual method void android app ActionBar setTitle java
  • Android - 除了普通 SSL 证书之外还验证自签名证书

    我有一个通过 SSL 调用 Web 服务的 Android 应用程序 在生产中 我们将拥有由受信任的 CA 签名的普通 SSL 证书 但是 我们需要能够支持自签名证书 由我们自己的 CA 签名 我已经成功实施了接受自签名证书的建议解决方案
  • 下载图像并显示它

    应用程序的主要目的是下载和显示图像 但是当我尝试启动应用程序时它崩溃了 这是我的代码 private DownloadImageTask task protected void onCreate Bundle savedInstanceSt
  • Android 手机应用意图

    我想在手机上启动手机应用程序作为意图 我正在使用这个代码 startActivity getPackageManager getLaunchIntentForPackage com android phone 但该函数抛出一个空指针异常 因
  • Flutter / FireStore:如何在 Flutter 中显示 Firestore 中的图像?

    我想将我在应用程序中使用的一些图像放入 Firestore 并从那里显示它们 而不是将它们作为资产捆绑在我的应用程序中 为了做到这一点 我想出了以下解决方案 对于我想要显示图像的项目 我创建了一个 Firebase 文档 其中有一个字段存储
  • 如何检测 Google Play 上是否有我的应用程序的更新? [复制]

    这个问题在这里已经有答案了 有没有办法以编程方式检查 Google Play 上我的应用程序是否有更新 以便通知用户 我知道 android google play 有自动通知 但我想使用我自己的通知 弹出消息来更新可用性 有点像 Vibe
  • Python Kivy - 在本机网络浏览器中打开 url 的应用程序

    我尝试制作一个简单的应用程序 在单击 Screen One 上的按钮后 在 Kivy 中打开一个网页 我使用了这个主题 Python 在应用程序中直接显示网络浏览器 iframe https stackoverflow com questi
  • 手动启用时 Firebase Crashlytics 不报告崩溃

    Crashlytics 在没有选择加入报告的情况下也能正常工作 但一旦我根据规定设置了选择加入报告 它就会停止报告任何内容tutorial https firebase google com docs crashlytics customi
  • 更改android中禁用按钮的颜色

    有没有办法通过样式或其他形式更改 android 中禁用按钮的颜色 我目前有以下内容 可绘制 button default xml
  • 点击监听器的公共类

    我的所有 6 项活动中有 7 个按钮 所有 6 个按钮在所有活动中都具有相同的功能 如何为这 6 个按钮执行通用的单击事件侦听器 您可以创建一个实现 View OnClickListener 的新类 如下所示 public class My
  • Android开发:未定义方法

    大家好 我是 Android 和 Eclipse 的新手 我刚刚遵循了developer android com 上的教程 现在我在添加操作栏 http developer android com training basics actio
  • 如何在新标签 android webview 中打开链接? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我已经使用 webview 创建了一个 android 应用程序来显示我的网站 我什至想添加在新选项卡中打开链接的功能 但我找不到任何
  • 如何在android sdk上使用PowerMock

    我想为我的 android 项目编写一些单元测试和仪器测试 然而 我遇到了一个困扰我一段时间的问题 我需要模拟静态方法并伪造返回值来测试项目 经过一些论坛的调查 唯一的方法是使用PowerMock来模拟静态方法 这是我的 gradle 的一
  • Jetpack Compose 部分或开放侧边框

    我正在尝试绘制部分或一侧开放的矩形圆形边框以实现此效果 玩了一下之后我得到了这个 这是通过以下方式完成的 RoundedCornerShape topStartPercent 50 bottomStartPercent 50 start R
  • ormlite 将日期读取为 'yyyy-MM-dd'

    我需要读取给我的 sqlite 数据库 因此我无法更改表中的日期格式 yyyy MM dd 当我尝试使用 ormlite 为我生成对象时 使用以下注释 DatabaseField columnName REVISION DATE dataT
  • gradle-experimental:0.1.0 buildConfigField

    谁知道怎么定义buildConfigField在实验性的 gradle 插件中 android productFlavors create demo applicationId com anthonymandra rawdroid buil

随机推荐

  • 使用 htaccess 进行子域重定向,无需更改地址栏中的 URL

    我在我的网络主机上设置了一个子域 如下所示 en domain com pointing to the folder en 但是当在地址栏中输入 en domain com 时 URL变为 domain com en 如果我进一步导航 假设
  • 跨域心跳无法用jquery解析json数据

    我将我的模块 一个 asp net 项目 嵌入到 门户 中 门户生成一个 iframe 到我的 url 我知道它很糟糕 但我没有做到 为了避免在用户迭代我的 Web 项目时在主 门户 端进行会话 门户所有者告诉我通过 javascript
  • windows cmd shell 中的单个抑扬符是什么意思:更多?

    这可能不是一个真正与编程相关的问题 但我想知道很长一段时间 下面的cmd命令是什么意思 只需在 cmd shell 中输入一个抑扬符 Windows 就会要求更多 而只要你输入偶数个抑扬符 Windows 就无法获得足够的信息 从 Vist
  • 使用 renderscript 计算数组中值的总和

    嗨 我是新手 正在尝试编码渲染脚本 我想知道如何使用渲染脚本对数组中的元素求和 有没有办法可以将输出传递回脚本以进行顺序添加 我的问题陈述是 向量和 描述 计算数组中值的总和 输入 整数数组 输出 整数 任何帮助将非常感激 恐怕这比看起来要
  • 时间:2019-03-17 标签:c#list permutations with limit length

    我有一个报价列表 我想从中创建链长度有限的 链 例如排列 我已经使用 Kw Combinatorics 创建排列了project 但是 默认行为会在列表计数的长度中创建排列 我不知道如何将链长度限制为 n 这是我当前的代码 private
  • 在同一个 jlabel 上重新显示其他 img 存在困难

    我有点卡住了 当我按下提交按钮时 应该在 JLabel 图像的同一位置重新显示另一张图片 因此如果有人有任何想法 我将不胜感激 我正在使用 eclipse 并且程序正在编译和运行 这是代码 Here is the GUI of the pr
  • 控制表单字段访问的最佳实践

    我有一个经典的 3 层 ASP Net 3 5 Web 应用程序 其中包含显示业务对象并允许编辑它们的表单 表单上的控件对应于基础业务对象的属性 根据用户的角色 用户可以读 写 只读或无权访问各种控件 非常传统的东西 我的问题是 编码的面向
  • 将键值对分成两个数组

    将键和值分离到两个不同的数组中的最佳方法是什么 这样 var data A Key 34 Another Key 16 Last Key 10 会变成这样 data1 A Key Another Key Last Key data2 34
  • html5视频flash后备建议

    我正在使用 html5 video 标签 想知道您是否可以帮助回答以下问题 当包含不同的文件格式 mp4 ogg 等时 我是否还必须包含 flv 作为 Flash 后备 或者浏览器是否知道自动默认为 Flash 版本 目前我只使用 mp4
  • 如何解决 C++ 中用于维护静态局部变量的服务数据的线程安全性?

    考虑以下场景 我们有一个带有静态局部变量的 C 函数 void function static int variable obtain blahblablah 该函数需要同时从多个线程调用 因此我们添加一个临界区以避免并发访问静态本地 vo
  • 在张量之间进行运算时出现“InvalidArgumentError:不兼容的形状:[64,40000] vs. [64] [Op:Mul]”?

    我正在尝试在两个张量之间执行此操作 green mat sio loadmat green mat green np array green mat G2 green tf convert to tensor green green tf
  • 单击链接时忽略表格单击功能

    当用户点击表格中的一行时 我有一个点击方法 table gt tbody gt tr click function if this hasClass info this removeClass info else this addClass
  • ggplot 区域外部(右侧)的 ggrepel 标签

    library tidyverse library ggrepel df lt structure list Fruit c Yellow Pear Yellow Pear Yellow Pear Yellow Pear Yellow Pe
  • Keycloak 服务器重启后 Keycloak 访问令牌无效

    我们在单页应用程序中使用 Keycloak 3 4 0 Keycloak js Keycloak 将其数据存储在 MariaDB 中 当我重新启动 Keycloak 服务器 不是 MariaDB 并刷新我的单页应用程序时 我被重定向到登录页
  • WPF TextBlock 屏幕阅读器无法读取内容

    我有一个包含自定义 WPF 窗口的应用程序 用于显示类似于 Win32 MessageBox 的弹出窗口 作为要求的一部分 应用程序必须可通过屏幕阅读器 特别是 JAWS 访问 我在让屏幕阅读器读出对话框中的文本时遇到问题 但它会正常读取按
  • 需要 pexpect 模块的帮助

    需要 pexpect 模块的帮助 我编写了一个简单的代码 可以使用 ssh 从服务器克隆 git 存储库 我面临几个问题 密码以纯文本形式显示 我不知道下载后退出程序的正确方法 它抛出以下错误 Traceback most recent c
  • 从单元格中取回公式 - VBA

    我正在编写 VBA 代码 其中我需要在一张纸中引用另一张纸中的公式 例如 在工作表 A 的单元格 1 3 中 有一个公式 R 1 C R 2 C 我想在单元格 1 3 的工作表 B 中输入公式 A R 1 C A R 2 C 我只想将公式保
  • 将 vb6 应用程序转换为 C# 的升级程序

    实现这一目标的最佳途径是什么 我知道VS2005包含升级机制 VS以后的版本有这个吗 微软专门投入了站点到 VB6 gt NET 迁移 他们推荐一个免费工具来自ArtInSoft 然而 我不确定我是否愿意维护以 VB6 风格编写的 NET
  • 如何在dyntick模式下卸载1HZ的tick?

    似乎在内核 4 19 和 4 20 中 剩余的 1Hz 滴答可以在 dyntick 模式下卸载到工作队列 但究竟要实现这一目标吗 我尝试通过执行以下操作来实现这一目标 设置 CONFIG NOHZ FULL y CONFIG RCU FAS
  • 意图 - 如果活动正在运行,则将其置于前面,否则启动一个新活动(从通知中)

    我的应用程序有通知 显然 没有任何标志 每次都会启动一个新活动 因此我会得到多个相同的活动在彼此之上运行 这是错误的 我想要它做的是将通知挂起意图中指定的活动带到前面 如果它已经在运行 否则启动它 到目前为止 我对该通知的意图 待处理意图是