问题标签 [android-notifications]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
12 回答
66291 浏览

android - 自定义通知布局和文本颜色

我的应用程序显示了一些通知,并且根据用户偏好,它可能会在通知中使用自定义布局。它运行良好,但有一个小问题——文本颜色。普通的 Android 和几乎所有制造商的皮肤都使用黑色文本和浅色背景作为通知文本,但三星没有:他们的通知下拉菜单有深色背景,默认通知布局中的文本是白色的。

所以这会导致一个问题:不使用任何花哨布局的通知显示得很好,但是使用自定义布局的通知很难阅读,因为文本是黑色而不是默认的白色。甚至官方文档也只是#000为 a 设置了颜色TextView,所以我在那里找不到任何指针。

一位用户非常友好地截取了问题的屏幕截图:

截屏

那么如何在布局中使用设备中的默认通知文本颜色呢?我宁愿不开始根据手机型号动态更改文本颜色,因为这需要大量更新,并且具有自定义 ROM 的人可能仍然会遇到问题,具体取决于他们使用的皮肤。

0 投票
1 回答
929 浏览

android - 持续通知会让我的应用保持活力吗?

我正在开发一个可能一次运行数小时的秒表式应用程序。在调试时,我在手机上运行了一夜,结果发现该应用程序是在夜间的某个时间发布的,而在早上发现它并没有像我希望的那样运行。

为了提高效率,我会跟踪秒表的启动时间,并且只在应用程序可见时更新显示。onPause()我的计时器线程(更新我的 UI 的那个)挂起,onResume()我恢复了线程。这意味着当我的应用程序在后台运行时,什么都没有发生,并且在长时间打开时它会被标记为关闭。

希望我的应用程序变得更加持久,我可以在秒表滴答作响的时候发布一个持续通知吗?

有人可能会说,如果我的应用程序没有做任何事情,那么它应该关闭。尽管这似乎是真的,但它本质上是在跟踪时间。即使这意味着它没有主动做任何事情,它也在等待用户停止跟踪时间。我不希望持续通知只是让我的应用程序保持活动状态,而且还提醒用户他们正在使用它来监控时间。

如果持续通知不能让我的应用保持持久性,我有什么轻量级的替代方案?

0 投票
2 回答
8471 浏览

android - 以编程方式结束正在进行的通知 - Android

我正在开发一个基于 GPS 的应用程序,并且刚刚开始添加我的 UX 功能,例如通知和进度条,但我坚持使用持续通知。

由于它是一个 GPS 应用程序,当用户跟踪开始时,我设置了一个持续通知以显示他们正在被跟踪,但是当他们在我的应用程序中点击“停止跟踪”时如何停止此通知?我必须告诉 NotifyManager 一些事情吗?我基本上是在尝试获得音乐播放器所具有的功能,例如当用户按下播放时会出现“播放”通知,但是当他们暂停时,正在进行的“播放”通知会被破坏。

另外,我以前从未使用过 GPS,但我是否应该在服务中进行此操作,以便在我的应用程序被操作系统占用内存时不会停止跟踪用户?或者那不会发生?

0 投票
1 回答
891 浏览

android - 如何在服务中实现通知概念?

我有一个应用程序,我需要在服务中实现通知的概念。

是否可以在服务中实现通知?目前,当我包含通知时,它显示错误“IllegalArgument Exception”

谢谢,

尼基

0 投票
3 回答
10970 浏览

android - 从其他应用程序的通知栏中删除通知

我想从通知栏中显示的另一个应用程序中删除通知。那可能吗?NotificationManager.cancelAll();据我所知,仅取消调用应用程序显示的通知。

我为什么要这样做?

我有一个通过网页读取和发送 SMS 的应用程序,我希望这个应用程序与现有的 SMS 应用程序(如 Handcent SMS)共同退出。我希望它的工作方式是,当通过网页阅读新收到的短信时,我想取消 Handcent SMS 显示的新短信通知,因为现在已阅读新短信。我将 SMS 标记为已读,一旦我打开 Handcent SMS,Handcent SMS 将其识别为已读,但通知仍然存在,直到我单击实际 SMS。

有两个场景;1号:

  1. 安卓设备收到一条短信。
  2. Handcent SMS 显示通知。
  3. 用户在设备上阅读短信。
  4. Handcent SMS 删除通知并将 SMS 标记为已读。

情景 2:

  1. 安卓设备收到一条短信。
  2. Handcent SMS 显示通知。
  3. 用户通过网页界面阅读短信。
  4. 我的应用程序清除了 Handcent SMS 显示的新 SMS 通知,并将 SMS 标记为已读。

这可能吗?

0 投票
1 回答
870 浏览

android - 如何在android中创建异步通知

在未来某个时间创建预定通知的最佳做法是什么?

我找到了一种使用通过 aService触发PendingIntent的方法AlarmManager。在我创建通知的onCreate()方法中。Service这似乎有点像滥用服务来做不应该做的事情。

是否有另一种不那么繁琐/更优雅的方法来达到同样的目的?(有问题的用例是每天提醒用户使用我的应用程序做某事)

0 投票
1 回答
688 浏览

android - Android中的通知问题?

这就是我在完成第一个活动的任务后调用的通知类中的代码。

但是我在获取有关当前应用程序的通知时遇到了问题。

我想将通知显示为对话框。

包含带有确定按钮的对话框。

0 投票
2 回答
612 浏览

android - 活动没有被重用

我的申请有一个奇怪的问题。

我启动应用程序,活动显示正常。

然后我按主页键,以便活动进入后台。我可以看到onPause()正在调用的方法。

然后应用程序的服务会创建一个显示在状态栏上的通知。

然后我单击通知并显示活动,我看到该onResume()方法已被调用。

然后我按主页键,活动进入后台。我可以看到onPause()正在调用的方法。

如果我现在通过单击应用程序图标启动应用程序,我会看到创建了一个新的活动实例,而不是使用暂停的实例。

如果我再次按下主页键,新活动将进入后台。

通过单击应用程序图标启动应用程序,我看到创建了另一个新的活动实例。

在该点按下后退按钮会破坏每个活动作为回报。

我想要发生的是使用活动的单个实例。

有任何想法吗?

0 投票
3 回答
7371 浏览

android - Android:在通话期间显示通知?

我有一个收听来电的广播接收器。我想调整来电屏幕。现在我可以向通知栏展示祝酒词并向通知栏添加通知(顺便说一句,在接听电话之前,由于屏幕被锁定,用户无法将其拉下,这有点糟糕)。我试图显示警报但它崩溃了 - 不允许吗?广播接收器中的代码有没有办法做其他事情,比如更改呼叫者的头像或给它一个名字(即使它不存在于联系人中)。假设我的广播接收器拦截了一个电话 - 它可以将电话号码和自定义头像添加到联系人,以便他们立即出现在通话屏幕中吗?

你怎么看?


编辑

我已经测试了供应商的代码,它可以工作,但是从后台线程更改 UI 是不安全的,所以我尝试稍微调整他的代码以使其线程安全,但是由于某种原因没有出现 toast。你怎么看?

0 投票
2 回答
2286 浏览

android - 左上角图标 Android

我想知道是否可以在我的应用程序运行时制作我自己的个人图标?我真的不想担心将其添加到通知向下滚动菜单中。我只想要左上角的图片。任何有关如何执行此操作的帮助将不胜感激。谢谢