Wie start - /Stopp-Lauffaehig/Handler?

Ich versuche zu pflegen Datenbanken synchronisiert zwischen einem Webservice und Android-app.
Der untenstehende code funktioniert, aber ich einige Probleme:

  • Jedes mal, wenn ich gehe zur Hauptseite der App einen neuen endlos-Prozess gestartet wird.
  • Der Prozess endet nie

Kann mir jemand erklären, wie man starten und stoppen diesen Prozess, wie ich möchte?
Ich möchte an diesem Prozess zu laufen, alle 5 Minuten, aber nur einmal, und wenn die app geöffnet ist.

public void onCreate(Bundle savedInstanceState) {   
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    final Handler handler = new Handler();
    final Runnable r = new Runnable() {
        public void run() {
            //DO WORK
            Mantenimiento();
            //Call function.
            handler.postDelayed(this, 1000000);
        }
    };
    r.run();
}
verwenden removeCallback. developer.android.com/reference/android/os/...
Sie können stoppen Handler mit dieser handler.removeCallbacks();
aber ich brauche, um ihn zu stoppen onDestroy
Und wo ist das problem zu nennen handler.removeCallbacks() im onDestroy?

InformationsquelleAutor Zartch | 2012-05-15

Schreibe einen Kommentar