AlarmManager 每 20 秒触发一次,而不是使用给定的时间间隔

问题描述

有人可以启发我吗,我做错了什么?我想每 15 分钟触发一次闹钟。 这是示例。

alarmManager?.let{
         if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M){
            alarmManager.setInexactRepeating(
                AlarmManager.RTC_WAKEUP,System.currentTimeMillis() + (15*1000*60),//This line works.
                AlarmManager.INTERVAL_FIFTEEN_MINUTES,//This interval does not work.
                pendingIntent
            )          
         }
     }

这是我的数据库,你会看到间隔是 20 秒

enter image description here

解决方法

糟糕,我发现这里的问题是我的广播接收器

def foobar(the_list):
    # `prev` stands for the English word `previous`

    the_list = iter(the_list)
    prev = next(the_list)    
    yield prev
    for elem in the_list:
        if elem != prev:
            yield elem
        prev = elem

我添加了一个布尔值,这样它就不会在每个“onLocationChanged”时调用我的 api