Zadanie czasowe przestaje działać po nieokreślonym czasie w systemie Android

Jestem nowicjuszem w Androidzie. Zajmuję się tworzeniem aplikacji, w której konkretny fragment kodu wykonuje się co 5 sekund w tle. Aby to osiągnąć, korzystam z usługi z zegarem z zadaniem timera. Przez jakiś czas działa dobrze, ale po pewnym nieokreślonym czasie moja usługa jest uruchomiona, ale zadanie timera zatrzymuje się automatycznie w Androidzie. Oto mój kod, proszę o pomoc. Z góry dziękuję.

    public void onStart(Intent intent, int startid) {
    //this is the code for my onStart in service class
    int delay = 1000; // delay for 1 sec.

    final int period = 5000; // repeat 5 sec.

    timer = new Timer();
    timer.schedule(new TimerTask() {
        @Override
        public void run() {
                        executeCode();
    }, delay, period);

};

questionAnswers(3)

yourAnswerToTheQuestion