奥利奥以上的警报管理器

时间:2019-05-09 07:36:41

标签: java android alarmmanager android-8.0-oreo

我创建了一个简单的闹钟。

它在oreo +上方和下方均能正常工作,但问题是当我在oreo +上方关闭应用程序时,闹钟无法正常工作。

AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);

Intent nIntent = new Intent(getApplicationContext(),MyAlarm.class);
nIntent.setFlags(FLAG_INCLUDE_STOPPED_PACKAGES);
PendingIntent sender = PendingIntent.getBroadcast(getApplicationContext(), 1234, nIntent, 0);
//creating a pending intent using the intent
 PendingIntent pendingIntent = PendingIntent.getBroadcast(this, (int)alarmPeriodicTime, nIntent, PendingIntent.FLAG_CANCEL_CURRENT);
        alarmManager.cancel(pendingIntent);

if (Build.VERSION.SDK_INT >= 23) {
            alarmManager.setExactAndAllowWhileIdle(AlarmManager.RTC_WAKEUP, alarmPeriodicTime, pendingIntent);
} else if (Build.VERSION.SDK_INT >= 19) {
            alarmManager.setExact(AlarmManager.RTC_WAKEUP, alarmPeriodicTime, pendingIntent);
} else {
            alarmManager.set(AlarmManager.RTC_WAKEUP, alarmPeriodicTime, pendingIntent);
}
Toast.makeText(this, "Alarm is set "+new Date(alarmPeriodicTime), Toast.LENGTH_SHORT).show();

有人知道为什么吗?

0 个答案:

没有答案