棒棒糖API用于控制状态栏中的闹钟图标

10

这是一个针对Lollipop版本的问题,因为API已经发生了改变。如果要在早期版本上执行此操作,请查看相关问题:


我想知道如何打开/关闭系统状态栏中显示的闹钟图标,如下图所示:

enter image description here

Timely Alarm Clock 在发布1.3版后可以控制Lollipop上的该图标。在此之前的版本中,该代码使用了私有API,详见相关问题

他们使用的新技术可以在运行v5.0.1的未root的Nexus 5上正常工作。


更新

看起来这个新API不仅可以更改图标,还可以在锁屏界面上显示设置的闹钟时间。


@Willis 谢谢你的慷慨奖励。我本来也想发一个奖励,只是为了奖励 nandeesh 的回答。 - Richard Le Mesurier
1
没问题,我也很好奇。总是乐意帮助南非荷兰语族同胞。 - Willis
1个回答

12

AlarmManager有一个新的API可以设置这个。

AlarmManager.setAlarmClock (AlarmManager.AlarmClockInfo info, PendingIntent operation)

如果您这样做,闹钟会显示在通知栏和锁屏界面上。


1
默认情况下,当闹钟设置/移除时,此图标会显示和隐藏。但是你有找到一种实际控制此图标的方法吗?我曾经有一个选项可以在设置闹钟时不显示图标,现在用户抱怨图标在状态栏中占用了不必要的空间。那么,即使设置了闹钟,有没有办法将其隐藏? - Koger
我认为从api 23开始我们应该使用AlarmManager.setExactAndAllowWhileIdle(),但是这不会显示图标。setAlarmClock将显示图标,但是解决方案是什么?我们应该同时使用这两种方法吗? - vanomart

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接