java - Android - 如何检测是否已设置闹钟(alarmmanager)

标签 java android android-intent alarmmanager android-pendingintent

我有一个“欢迎”屏幕,它会下载闹钟应该响起的时间,但是每次用户登陆屏幕时都会设置一个新闹钟

这当然会导致多个警报

有什么方法可以检测今天是否已设置吗?

感谢您提前提供的帮助

安迪

最佳答案

如果您设置了具有相同待处理 Intent 的警报,则先前的警报将被取消并再次重置。如果您想取消任何警报,则可以通过alarmManager.cancel(操作)取消该警报。 如果你像这样设置闹钟。

  PendingIntent sender = PendingIntent.getBroadcast(MyAlarm.this,0,intent, 0);
    AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
            alarmManager.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + (5 * 1000), sender);

然后您可以通过以下方式取消该警报。

 alarmManager.cancel(sender);

关于java - Android - 如何检测是否已设置闹钟(alarmmanager),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7038924/

相关文章:

android - 将 XML 文件动态加载到 Linearlayout

java - Android 异常尝试调用虚方法 'int android.content.Context.checkPermission(java.lang.String, int, int)

java - 何时调用 takeTurn() 来跳过开始玩家的回合

Android 将文件附加到 GMAIL - 无法附加空文件

java - 使用Retrofit 2.0从网络API中提取信息

java - 为什么我们不能将 ArrayList<Integer> 传递给带有 (Integer...) 参数的方法?

java - 如何在java中格式化输出控制台列?

java - 使用 Intents 传递铃声数据

java - Activity 权限拒绝

java - 相同的代码但不同的输出 c# vs java 使用多态性?