gpt4 book ai didi

java - AlarmManager 无需等待指定时间即可触发 Intent

转载 作者:行者123 更新时间:2023-12-01 12:47:07 25 4
gpt4 key购买 nike

我试图在指定的时间启动一个 Intent 来打开 wifi,但由于某种原因,警报立即触发。我使用 getTimeDifference 作为参数调用 setAlarm。我检查了 log.e 和 getTimeDifference 返回的时间是准确的,但它仍然立即触发

   public long getTimeDifference(){
Date current = new Date();
Date future = new Date();
future.setHours(time.getCurrentHour());
future.setMinutes(time.getCurrentMinute());
if((future.getTime() - current.getTime()) < 0){
future.setDate(future.getDate()+1);
}
return future.getTime() - current.getTime();
}
public void setAlarm(long time){
Intent intent = new Intent(Volume.this,RadioService.class);
PendingIntent pendingIntent = pendingIntent = PendingIntent.getService(
Volume.this, 0, intent, 0);
String sd = "time is:" + time;
Log.e("time dif", sd);
alarm.set(AlarmManager.RTC_WAKEUP, time, pendingIntent);
}

最佳答案

RTC_WAKEUP 想要 UTC 中的实际时间,而不是差异。

关于java - AlarmManager 无需等待指定时间即可触发 Intent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24590749/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com