gpt4 book ai didi

android - 如何在 Android 中只触发一次警报?

转载 作者:搜寻专家 更新时间:2023-11-01 07:45:06 25 4
gpt4 key购买 nike

我设置了当用户登陆某个 Activity 时的警报,该 Activity 会在特定时间后触发。我如何检查此警报是否已被触发,以便在用户返回此 Activity 时不会再次设置?如果闹钟已经安排好但没有触发,我只能阻止再次设置闹钟:

alarmIntent = PendingIntent.getBroadcast(context, requestCode, intent, PendingIntent.FLAG_NO_CREATE);
if (alarmIntent != null) {
// Alarm is already set
return;
}
alarmIntent = PendingIntent.getBroadcast(context, requestCode, intent, 0);

但如果它已经被触发,这将不起作用,因为警报将在之后被删除,所以 alarmIntent 将是 null

最佳答案

您可以使用共享首选项来检查它是否已设置。

if(!setFlag)
{
Intent myIntent = new Intent(FirstActivity.this, LogoutService.class);
pendingIntent = PendingIntent.getService(FirstActivity.this, 0, myIntent, 0);
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.add(Calendar.MINUTE, 10); //Minutes
alarmManager.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), pendingIntent);
}

关于android - 如何在 Android 中只触发一次警报?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46347911/

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