Timer error

0
public int onStartCommand(Intent intent , int flags , int startId) {

           Handler handler = new Handler();
         Runnable runnable = new Runnable() {
            @Override
            public void run() {
                
                 handler.postDelayed(this, 1000);
            }
        };
        handler.postDelayed(runnable, 1000);

        return 0;
    }

mam taki kod który ma co sekundę się uruchamiać i coś robić, ale zwraca error:
error: local variable handler is accessed from within inner class; needs to be declared final
a z kolei gdy zrobię handlera finalnym, o aplikacja się crashuje

0

Jeżli chcesz wykonywać pewne zadanie w regularnych odstępach czasu to możesz użyć Timera - https://developer.android.com/reference/java/util/Timer

1 użytkowników online, w tym zalogowanych: 0, gości: 1