Background Prozess Timer auf Android

Ich versuche, einen Prozess-Timer zum Laufen zu bringen und ihn im Hintergrund auf Android laufen zu lassen (beginnt mit einem Knopfdruck).

Der Timer muss auf 30 Sekunden eingestellt sein und die Anwendung sollte sogar im Hintergrund weiter wachsen (mit Home-Taste und Power / Bildschirm aus).

Wie kann ich das machen? Ich habe versucht, mit Service und Handler, aber nicht funktioniert ...

BEARBEITE

Meine Dienstverfolgung (Vorgang mit 30 Sekunden)

public class TrackingService extends IntentService {

    private Handler mHandler;
    private Runnable mRunnable;

    public TrackingService() {

        super("TrackingService");

    }

    public TrackingService(String name) {

        super(name);

    }

    @Override
    protected void onHandleIntent(Intent intent) {

        long timer = 30000;

        mHandler = new Handler();
        mRunnable = new Runnable() {

            @Override
            public void run() {

                    //TODO - process with update timer for new 30 sec

                    mHandler.postDelayed(this, timer);

            }
        };

        mHandler.postDelayed(mRunnable, timer);

    }

}

Meine Klick-Taste:

mButton.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {

        //TODO - start first time and it continued every 30 seconds and continue in the background
        startService(Intent intent = new Intent(this, TrackingService.class));

    }
});

Antworten auf die Frage(4)

Ihre Antwort auf die Frage