Timer app: wie vorgehen?

R

Rayk

Neues Mitglied
0
Hallo zusammen,

ich würde gerne eine Timer app basteln. Ich gebe z.B. die Minuten ein und das App zählt dann runter und gibt einen Hinweis nach Ablauf der Zeit.

1. Ist es richtig, dass ich einen Service benötige, da die App evtl geschlossen werden kann?
2. Kann ich mit sleep(1000) arbeiten oder ist das zu ungenau? Evtl. dann mit Timestamp Differenzen?

Wäre super wenn ihr mir paar Tipps geben könntet.

Gruß,
Oli
 
Hi,

schau dir mal die ApiDemos an, sind für jede Version im SDK enthalten. Dort gibt es unter App/Alarm einen AlarmService ich denke das wird alle deine Fragen beantworten.

Gruß,
Stefan
 
Hallo,

danke für den Tipp.

Ich hab mir das Beispiel mal angesehen und mir ist aufgefallen, dass hier der AlarmManager benutzt wird. Wenn ich das richtig verstanden habe ist das eine BuildIn Klasse von Android und der Alarm wird auf "in 30 sec" gesetzt und dann klingelt der Alarm Manager.

Aber wie zeige in der Anwendung an, wie viel Zeit verbleibt? Ich hab mal mit CountDownTimer gespielt und das scheint es zu sein.

Jetzt meine Frage komme ich mit CountDownTimer zu meinem Ziel oder sollte man mit dem AlarmManager arbeiten?

danke und Gruß,
Oli
 
Ich denke CountDownTimer sollte reichen, ist schön simpel (kannte ich noch nicht) und wenn du später doch nen Service brauchst kannst immernoch einen schreiben.

Stefan
 
Zuletzt bearbeitet:
Hallo und Danke für die Antwort!

Wenn ich den CountDownTimer in einen Service implementiere und diesen jedesmal abrufe, um die verbleibende Zeit anzuzeigen kommt es doch zu Verzögerungen oder sehe ich das falsch?

Gruß,
Oli
 
Brauchst du denn einen Service?

Einen Service brauchst du eigentlich nur wenn deine Anwendung beendet wird, solange sie im Hintergrund läuft, läuft auch der Countdowntimer weiter.

Mit einem Service würde ich nicht die Anzeige in der App steuern sondern nur an den Service übermitteln wann der Countdown endet. Dadurch kannst du mehrere Sachen machen:

1. Wenn deine anwendung geschlossen ist und neu geöffnet wird kannst du schauen ob der service noch läuft und abfragen wann der countdown enden soll und den Timer mit der Restlaufzeit neustarten.

2. Wenn deine Anwendung beendet wurde und das Ende der Countdownzeit erreicht ist kann der Service den Benutzer darüber informieren das der Countcount endet oder deine Anwendung rechtzeitig neu starten so das das Ende der Countdownzeit angezeigt werden kann.

Wie gesagt alles hängt davon ab was du brauchst, wenn es nur eine einfache Anzeige ist solange dein Programm läuft reicht CountDownTimer.

Gruß,
Stefan
 
Hallo Stefan,

danke für die ausführliche Antwort!
Ich möchte das die App auch nach dem Wechsel zu einer anderen App läuft. D.h., so wie ich die Architektur verstanden habe, muss ich damit rechnen, dass die Anwendung geschlossen wird aus Speichermangel. Somit müßte ich einen Service anbieten. Sehe ich das Richtig?

Gruß,
Oli
 

Ähnliche Themen

M
Antworten
3
Aufrufe
166
moin
M
Manny87
  • Manny87
Antworten
11
Aufrufe
166
swa00
swa00
R
  • Robby1950
2
Antworten
23
Aufrufe
1.015
Robby1950
R
Zurück
Oben Unten