控制android状态栏图标

2023-11-24

我正在尝试对状态栏中图标的状态进行一些控制。我希望能够执行以下操作:

  1. 保留图标 在状态栏中可见,只要 当应用程序运行时,即使用户选择清除状态栏。
  2. 清除状态栏中的图标 如果应用程序退出,即使(特别是)它被杀死?我意识到当应用程序显式退出时我可以将其删除,但我想确保如果应用程序被终止,它就会消失。我必须承认我还没有尝试过这个。

尽管我已经看到似乎正在执行此操作的应用程序,但我无法获得有关此的一些好的信息。


1)查看开发者文档页面状态栏通知。另请注意,您需要查看FLAG_NO_CLEAR常数,应该涵盖您的情况。

2)在应用程序被杀死的情况下,保留图标不一定是坏事,并且在某种程度上取决于应用程序的目的。特别是,如果您的应用程序进入后台然后被杀死,谷歌的一位工程师实际上已经注意到离开图标是预期的行为:

正确,onDestroy() 没有被调用 当它被杀死时。这是一样的 作为活动——内核杀死 在需要时进行处理,而不是等待 该应用程序。

状态栏正确保持 图标。该服务稍后将 重新启动;它并没有被阻止。

后台服务正常 定期被杀。这是 故意的,因为一般情况下 后台服务不是啥东西 用户直接意识到,并且 现在重新启动他们的进程 然后避免此类问题 服务消耗量不断增加 内存。

如果你的服务是用户喜欢的 实际上意识到(例如音乐 播放),考虑 Service.startForeground()。

话虽这么说,无论如何该图标可能应该消失。如果您使用任务管理器杀死其他具有持久图标的应用程序(例如 Meebo),它们将会被清除。不过,我不确定这是否在所有情况下都会发生。如果您的应用程序在后台被 OOM 杀死,那么您很可能无论如何都不想清除它。

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

控制android状态栏图标 的相关文章

  • 房间数据库更改未触发观察者

    当房间数据库更改时 我试图更新 RecyclerView 但是 当数据库发生更改时 不会调用 MainActivity 中定义的观察者的 onChanged 方法 如果我让 DAO 返回 LiveData 而不是 List 并在 ViewM
  • 应用程序在加载 xml 布局文件的主线程中做了太多工作

    我正在制作一个 9x9 数独网格 其中 81 个单元格本身就是一个 3x3 网格 单个细胞看起来像这样 1 2 3 4 5 6 7 8 9 每个数字代表该单元格的铅笔注释 我有一个名为 cell layout xml 的文件 表示这种 3x
  • 在 ChromeO 上安装未知来源的 apk

    我今天早上更新了我的 Chromebook Asus Flip 以获取 Play 商店 我的 Chromebook 安装了 M53dev 通道版本 它运作良好 我可以安装并运行从 Play 商店下载的 Android 应用程序 我想测试我的
  • 带有 Android 支持库 v7 的 Maven Android 插件

    我使用 maven android plugin 构建我的 android 应用程序 它依赖于 android 支持库 v4 和 v7 由于我没有找到如何从developer android com下载整个sdk 因此我无法使用maven
  • Android 中的列表(特别是 RecyclerView 和 CardView)如何工作

    请原谅我问这个问题 但我是 Android 开发新手 尽管我正在尝试了解developer android com 网站上的基础知识 但大多数示例 即使他们说它们是为 Android Studio 构建的 尚未设置为使用 Gradle 因此
  • 改造中的多个队列导致内存不足错误?

    我正在使用retrofit2 做我的项目 当我的呼叫失败时 我再次重复相同的呼叫 重复此 呼叫使我的应用程序强制关闭 当我查看日志时 我得到了错误日志 如下所示 我觉得这是由于同一呼叫的多次排队造成的 所以我在排队之前就这样做了 我打电话给
  • Fragment 问题中的 ExpandableListView

    我正在尝试在片段中实现可扩展列表视图 没有错误出现 当我尝试记录两个的输出时List
  • ADB TCPIP 连接问题

    我有两台 Galaxy S3 其中一个已扎根 另一个则未扎根 因此 当我尝试通过本地网络连接它们时 计算机可以看到已root的计算机 但是正常的就卡在tcpip这一步了 所以 我写 adb tcpip 5555 It says restar
  • 从ListView中隐藏行而不占用空间

    我有一个带有关联 ArrayAdapter 的 ListView 它在多个活动中显示其内容 不幸的是 现在有必要 我的 ListView 在其中一项设置中不显示其所有元素 而仅显示 属性 未设置为 true 的元素 我想避免使用两个具有不同
  • Android 中 localTime 和 localDate 的替代类有哪些? [复制]

    这个问题在这里已经有答案了 我想使用从 android API 获得的长值 该值将日期返回为长值 表示为自纪元以来的毫秒数 我需要使用像 isBefore plusDays isAfter 这样的方法 Cursor managedCurso
  • 控制 OverlayItem 大小

    我正在构建一个在单个 ItemizedOverlay 中包含几十个 OverlayItems 的地图 我的地图设计为可以非常近距离地查看 大约缩放级别 18 并且 OverlayItems 彼此非常接近 地图放大时看起来不错 但是 如果用户
  • 如何使用 SharedPreferences 保存多个值?

    我正在开发一个字典应用程序 在我的应用程序中 我假设用户想要保存最喜欢的单词 我决定使用共享首选项保存这些值 我知道 SQLite 和文件更好 但我坚持使用 SharedPreferences 所以继续使用它 下面是我的代码 Overrid
  • 是否可以通过 Android 应用程序来录音?

    我是一名开发人员 希望创建一个 Android 应用程序来记录电话 这是出于我个人的需要 为了我自己的目的和记录而记录电话 是否有可能做到这一点 是否可以访问麦克风以及通过扬声器发出的声音 我对 Android 开发有点陌生 所以请耐心等待
  • 当 minifyEnabled 为 true 时 Android 应用程序崩溃

    我正在使用多模块应用程序 并且该应用程序崩溃时minifyEnabled true in the installed模块的build gradle 以下是从游戏控制台检索到的反混淆堆栈跟踪 FATAL EXCEPTION Controlle
  • 在运行时更改用作背景的 Drawable xml 内的形状纯色

    我有一个 Drawable xml 文件 background xml
  • 安卓。 CalendarView...一次仅显示一个月的日历

    我正在使用 CalendarView 其中我想一次仅查看一个月的日历并滚动查看下个月 但 CalendarView 一次显示所有月份 下面是我的代码
  • Android模拟器中的网络访问

    我试图通过我的 Android 应用程序访问互联网 但我既成功又失败 我在构建应用程序时启动模拟器 并且应用程序安装得很好 我可以使用浏览器访问互联网 但是 当我尝试这个小代码片段时 InetAddress inet try inet In
  • 哪个视图最亮?

    在Android中 哪个是轻量级视图 例如 View Textview Edittext 等 在某些情况下 我们需要使用视图来填充区域而不向用户显示视图 同时屏幕加载速度应该很快 您可以使用空间 android widget Space S
  • 如何在android中通过蓝牙向配对设备发送短信?

    在我的应用程序中 我想通过蓝牙发送和接收短信 我可以在列表视图中看到配对设备名称和地址的列表 但是当我尝试向配对设备发送文本时 什么也没有发生 在其他设备中没有收到文本 这是我向配对设备发送消息的代码 private void sendDa
  • 丢失应用程序的密钥库文件(但已启用 Google Play 应用程序签名)

    我已经失去了原来的keystore用于签署我的应用程序的文件 我的应用启用了 Google Play 应用签名 如果我联系 Google 支持人员 是否可以重置密钥 以便我可以继续上传到此包 我希望我可以做到这一点 因为应用程序签名已启用

随机推荐

  • 构建 Python 脚本并从 C# 调用方法

    有什么办法可以让这个场景发挥作用吗 有一个Python脚本 通过使用 IronPython 运行以下脚本将其构建到 DLL 中 import clr clr CompileModules CompiledScript dll script
  • SQL Server 上存储过程的计划运行

    是否可以以某种方式设置 Microsoft SQL Server 来定期运行存储过程 是的 在 MS SQL Server 中 您可以创建计划作业 在 SQL Management Studio 中 导航到服务器 然后展开 SQL Serv
  • 在 git 中查看已删除文件的更改

    假设当我从 master 分支出来时 有一个文件colors txt on the master我的存储库的分支包含以下内容 red green blue yellow 然后我分支到my branch 其中我进行了以下更改 Delete c
  • 合并矩阵中具有相同列名的列

    我有一个矩阵 其中的列重复字符列名称 set seed 1 m lt matrix sample 1 10 12 replace TRUE nrow 3 ncol 4 byrow TRUE dimnames list c s1 s2 s3
  • 连接 AJAX、CouchDB 和 JavaScript

    我在 AJAX CouchDB 和 JavaScript 方面遇到了一些问题 我可以在浏览器中从 CouchDB 打开以下 URL http 192 168 1 58 5984 mydb 名称 new Ajax Request http 1
  • 当鼠标“点击”.rect 时 Pygame 动作?

    我一直在编写一个测试函数来了解 pygame rect 上的鼠标 单击 操作将如何产生响应 So far def test pygame init screen pygame display set mode 770 430 pygame
  • 位置坐标、纬度和经度的长度是多少? [关闭]

    Closed 这个问题需要细节或清晰度 目前不接受答案 纬度和经度可以有多少位小数点前和小数点后 以下是我从 Windows Phone 设备发送的位置获取的示例 Latitude 63572375290155 Longitude 1067
  • 如何将数字转换为单词 - ORACLE

    我编写了一个非常简单的查询 其结果为 500 我需要如下转换该值 old value 500 new value FIVE HUNDERED 使用卢克的力量 SqlFiddle演示 SELECT UPPER TO CHAR TO DATE
  • 作为启动上下文提供时 CoroutineExceptionHandler 不执行

    当我运行这个时 fun f runBlocking val eh CoroutineExceptionHandler e gt trace exception handler e val j1 launch eh trace launche
  • 如何使用 StylePlaceHolder 和 Style 控件控制 ASP.NET 主题中的样式表

    Update 这变成了一篇博客文章 包含更新的链接和代码 位于我的博客上 https egilhansen com 2008 12 01 how to take control of style sheets in asp net them
  • 为什么 cfcookie 不允许将 domain= 设置为 CFID/CFTOKEN 的子域?

  • phpMyAdmin 报告“无权限”

    长话短说 我最终从 EasyPHP 中的 PHPMyAdmin 中删除了 root 用户 经过一番研究 我使用了skip grant tables来重新获得数据库访问权限 然而 现在我不能做任何事情 因为 root 用户有 无特权 也就是说
  • Pyppeteer:浏览器在 AWS Lambda 中意外关闭

    我在 AWS Lambda 中遇到此错误 看来 devtools websocket 没有启动 不知道如何修复它 有任何想法吗 谢谢你的时间 异常源自get ws endpoint 由于websocket响应超时https github c
  • 在 Swift 中迭代字典

    我对 Xcode 在 Swift 编程语言指南 中给我的这个实验的答案有点困惑 Use a for in to iterate through a dictionary experiment let interestingNumbers P
  • 如何使 JXTreeTable 对其顶部元素进行排序

    我知道 我已经查看了来源 JXTreeTable 上的排序已被禁用 但是 我希望允许仅根据根节点的直接子节点的值对所有列进行排序 假设我有这样的结构 Name Date File UID Root Mr X 1996 10 22 AE123
  • rspec 和 Shoulda - 互补还是替代?

    我已经使用shoulda有一段时间了 并且我已经阅读并使用了rspec 我没有做过深入的比较和对比 但在我看来 两者之间有一些重叠 但它们并不是一对一的替代 我正在考虑使用 rspec 在我的 Rails 系统中编写一些单元测试 而不替换用
  • Django ORM:覆盖子类中字段的 related_name

    我得到这个异常 django core exceptions FieldError 类 SpecialPlugin 中的本地字段 ticket 与基类 BasePlugin 中名称相似的字段发生冲突 这是我的模型 class BasePlu
  • 点击屏幕顶部状态栏时 UITableView 滚动到顶部

    我插入了一个UITableView在另一个里面UIViewController的观点 但是当我点击屏幕顶部的状态栏时 表视图不会滚动到顶部 这是 iOS 应用程序中的预期行为 我试过 self tableView setScrollsToT
  • 更改实例变量

    我有这个代码 class Yes def init self self a 1 def yes self if self a 1 print Yes else print No but yes class No Yes def no sel
  • 控制android状态栏图标

    我正在尝试对状态栏中图标的状态进行一些控制 我希望能够执行以下操作 保留图标 在状态栏中可见 只要 当应用程序运行时 即使用户选择清除状态栏 清除状态栏中的图标 如果应用程序退出 即使 特别是 它被杀死 我意识到当应用程序显式退出时我可以将