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));
}
});