【发布时间】:2026-02-13 05:15:01
【问题描述】:
我以这种直接的方式投射 LED 通知:
NotificationManager notifMgr = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
notifMgr.cancelAll();
Notification notif = new Notification();
notif.ledARGB = 0xff0000ff;
notif.ledOnMS = 99999;
notif.ledOffMS = 0;
notif.flags |= Notification.FLAG_SHOW_LIGHTS;
notifMgr.notify(1234, notif);
它让 LED 只是永久的淡蓝色。
如果在那种状态下,我收到例如 google talk 消息,它的通知会覆盖我的 LED 状态,因此 LED 现在会闪烁白色(gtalk 默认)。
如果现在我的程序创建了另一个 LED 通知,由于某种原因它不会覆盖 gtalk LED 通知,因此 LED 会保持白色闪烁。
如何让我的通知覆盖其他 LED 通知?显然必须有办法,因为 gtalk 会覆盖我的 LED 状态。
谢谢!
【问题讨论】:
-
当您在
Notification上请求 LED 时,您不应该假设设备的 任何 行为。有些设备没有 LED。一些设备制造商可能不会将 LED 分配给Notifications。一些设备制造商可能更喜欢固件(充电状态、聊天应用程序等)而不是 SDK 应用程序。以此类推。 -
但至少程序“lightflow”似乎可以做到
标签: android notifications