我正在开发一个应用程序,您可以安排您的时间,它会像Google日历一样及时提醒您。我使用AlarmManager
类,并设置一个重复任务来每隔一分钟检查一次数据库,并查看当时是否有任何警报。为什么使用闹钟管理器重复任务在android上不准确?
@Override
public void onReceive(Context context, Intent intent) {
Calendar now = Calendar.getInstance();
doRepeatingWorks(now.getTimeInMillis()); // Like Checking if one day passed to do some tasks
checkDbIfThereIsSomeSchedule(now);
}
而且我把这个启动报警经理:
public void setAlarm(Context context) {
AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(context, AlarmReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, 0);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), G.ALARM_CHECK_INTERVAL_MILIS, pendingIntent);
}
但它是不准确的,有时我想出这个任务杀手级应用杀死我报警,并使其完全没有价值。
虽然使用foregroundService
会消耗电量,但它会随用户的通知而变得异常敏感。
是否有任何解决方案或替代方案来解决这个问题?
请发布您的代码 –
如果您只有一分钟的间隔时间然后使用'Handler' –
@BipinGawand查看更新请 –