我现在已经搜索了3天,但在其他任何地方都找不到解决方案或类似的问题/问题.这是交易:
触发1小时 - >工作正常
在2小时内触发 - >在1:23中进行
在1天内触发 - >在~11:00进行
那么为什么AlarmManager如此不可预测并且总是太快?或者我做错了什么?还有另一种方式可以正常工作吗?
这是我在AlarmManager中注册PendingIntent(剥离)的方式:
AlarmManager alarmManager = (AlarmManager)parent.getSystemService(ALARM_SERVICE);
Intent myIntent = new Intent(parent, UpdateKlasRoostersService.class);
PendingIntent pendingIntent = PendingIntent.getService(parent, 0, myIntent, PendingIntent.FLAG_UPDATE_CURRENT);
//Set startdate of PendingIntent so it triggers in 10 minutes
Calendar start = Calendar.getInstance();
start.setTimeInMillis(SystemClock.elapsedRealtime());
start.add(Calendar.MINUTE, 10);
//Set interval of PendingIntent so it triggers every day
Integer interval = 1*24*60*60*1000;
//Cancel any similar instances of this PendingIntent if already scheduled
alarmManager.cancel(pendingIntent);
//Schedule PendingIntent
alarmManager.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, start.getTimeInMillis(), interval, pendingIntent);
//Old way I used …Run Code Online (Sandbox Code Playgroud)