问题描述
这是我的代码
alarmStart = (AlarmManager) getSystemService(ALARM_SERVICE);
alarmStart.set(AlarmManager.RTC,startTime.getTime(),"alarm",
new AlarmManager.OnAlarmListener()
{
@Override
public void onAlarm() {
//On alarm code here
}
},null);
它说转换到 OnAlarmListener 需要 API 级别 24(当前最小值为 21)。 但我希望它在所有 API >=21 上运行。 我应该对我的代码进行哪些更改?
1楼
根据(强调我的):
直接通知告警:请求者从设置告警到下发这段时间必须持续运行,否则会下发失败。 使用这种机制只能设置一次报警,不能设置重复报警。
IMO 这只是等的某种包装。
您可以通过将 Messenger(它将执行您的 onAlarm 代码)嵌入到您的 PendingIntent 中来实现类似的功能,并在您的 PendingIntent 关闭时调用它。