1

我正在进行一项活动,该活动使用该方法获取下一个闹钟getNextAlarmClock()。它完美地工作并按预期显示系统中设置的早期闹钟(在我的情况下来自股票 MIUI 时钟应用程序)。

现在问题来了:

我注意到,如果我将闹钟设置为第二天,则闹钟设置为今天的午夜。但是我在明天之前没有设置任何闹钟,并且每天都会重复(一天是午夜,一天是晚上 7:50,一天是晚上 11:50),但在那一刻什么都没有发生。

因此,我完全被我连接adb shell并执行dumpsys alarm命令的手机行为弄糊涂了。我在输出中找到了这些行:

Batch{38cd120 num=1 start=298318940 end=298318940 flgs=0x3}:
    RTC_WAKEUP #0: Alarm{5d9a2c9 type 0 when 1510599024750 com.android.providers.calendar}
      tag=*walarm*:com.android.providers.calendar.SCHEDULE_ALARM
      type=0 whenElapsed=+5h12m31s451ms when=2017-11-13 19:50:24
      window=0 repeatInterval=0 count=0 flags=0x3
      Alarm clock:
        triggerTime=2017-11-13 19:50:24
        showIntent=null
      operation=PendingIntent{db9bdce: PendingIntentRecord{b3ec4ef com.android.providers.calendar broadcastIntent}}

因此,似乎 android 日历提供程序每天都会触发闹钟,但日历中没有备忘录或事件。

我的问题是:

  • 为什么日历提供程序会触发此警报?为什么它是一个闹钟而不是一个简单的闹钟?

  • 如何删除所有未来对该警报的呼叫?

4

0 回答 0