gpt4 book ai didi

java - 如何延迟重复警报的触发(开始时间)?

转载 作者:太空狗 更新时间:2023-10-29 16:21:39 25 4
gpt4 key购买 nike

问题是我想延迟重复警报的第一次触发。例如,我希望这个未决 Intent 在点击 10 分钟后立即生效,该怎么做?

public void onClick(DialogInterface dialog, int which) {
Intent intent = new Intent(Main.this, ReportService.class);
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);
Calendar c = Calendar.getInstance();
PendingIntent pendingIntent = PendingIntent.getService(Main.this, 0, intent, 0);
alarmManager.setInexactRepeating(AlarmManager.RTC_WAKEUP, c.getTimeInMillis(), 112500, pendingIntent);
}

此 setInexactRepeating 中的第二个参数称为 triggerAtMillis来自 Android 开发者指南:triggerAtMillis 闹钟应该首先响起的时间(以毫秒为单位),使用适当的时钟(取决于闹钟类型)。这是不准确的:警报不会在此时间之前触发,但在第一次调用警报之前可能会有几乎整个警报间隔的延迟。

我正在更改它,它总是从点击开始并且没有延迟,有什么帮助吗?

最佳答案

检查 developer link这里。第二个参数是 triggerAtMillis。它用作闹钟应该首先响起的时间(以毫秒为单位)

因此,在您的情况下,将额外的毫秒数添加到 c.getTimeInMillis(),之后您想首先运行您的待定 Intent 。 :)

关于java - 如何延迟重复警报的触发(开始时间)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13029799/

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