Ich möchte eine BroadcastReceiver
nach bestimmten Zeitintervallen aufrufen. BroadcastReceiver
ruft an, aber es ruft nicht genau nach 10 Sekunden an, manchmal ruft es 20 Sek. Manchmal mehr als 20 Sekunden auf. Ich möchte BroadcastReceiver
genau nach 10 Sekunden anrufenAlarmManager BroadcastReceiver nach bestimmten Zeitintervall nicht aufrufen
Dies ist der Code von MainActivity
Intent myIntent = new Intent(MainActivity.this, SampleReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(MainActivity.this, 0, myIntent,0);
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, wakeupTime,1000 * 10, pendingIntent);
Dies ist Code von broadcastreceiver
public class SampleReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Log.e("Brodcast","receiver");
}
}
Das ist meine Protokolldatei
09-05 14:48:21.444 18222-18222/com.loconav.partners.tracker E/Brodcast: receiver
09-05 14:49:21.509 18222-18222/com.loconav.partners.tracker E/Brodcast: receiver
09-05 14:50:31.578 18222-18222/com.loconav.partners.tracker E/Brodcast: receiver
09-05 14:51:21.618 18222-18222/com.loconav.partners.tracker E/Brodcast: receiver
http://stackoverflow.com/questions/39036001/android-how-to-run-background-service-periodically/39036118#39036118 diese –
helfen werde ich wiederholen möchten nach bestimmten Sekunden. Es ruft an, aber nicht nach bestimmten Zeitintervallen. –
@SumitMarwha Das liegt daran, dass wiederholte Alarme auf API-Ebene 19+ ungenau sind. Siehe meine Antwort unten. – earthw0rmjim