Я пытаюсь установить будильник для отображения сообщения Toast в моем приложении через 10 секунд, но по любой причине это сообщение отображается через 6 секунд, и оно игнорирует время, которое я передаю методу setExact:
AlarmManager mgr=(AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
Intent i=new Intent(context, processTimerReceiver.class);
PendingIntent pi=PendingIntent.getBroadcast(context, 0, i, 0);
mgr.setExact(AlarmManager.RTC_WAKEUP,10000, pi);
Это мой класс приемника:
public class processTimerReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, "Time is up", Toast.LENGTH_SHORT).show();
}
}
Получатель в моем манифесте:
<receiver android:name=".processTimerReceiver" >
<intent-filter>
<action android:name="processTimerReceiver" >
</action>
</intent-filter>
</receiver>
что я делаю не так?
Я тестирую на AndroidУстройство 8.0 Oreo.