Programm im Hintergrund laufen lassen Programm im Hintergrund laufen lassen
Danke Danke:  0
Ergebnis 1 bis 4 von 4
  1. 01.04.2012, 02:46
    #1
    Ich bin sehr neu in der Android Programmierung und habe leider auch mit Java noch nicht wirklich was gemacht, was das ganze natürlich etwas schwieriger gestallter.
    Allerdings kann ich sehr gut PHP Programmieren, welches ja mehr oder weniger gleich ist beim Aufbau...

    Aber nun zu meiner Frage:
    Ich bin gerade dabei ein kleines APP zu schreiben welches einen Alarm direkt auf mein Smartphone bringt, sowie z.B. die Lautstärke des PCs steuert. Die Kommunikation erfolgt über ein Visual Basic Programm welches ein kleinen Webserver eingebaut hat und auf HTTP Requests Reagiert. Also z.B. /getvolume = aktuelle Lautstärke.
    Nun habe ich es schon mal geschafft das ich in einer SeekBar die aktuelle Lautstärke anpasse, sowie die Steuerung der Lautstärke.

    Was ich nun aber eben noch möchte ist dass das APP auch Alarme direkt anzeigt, auch wenn das Programm selber geschlossen wird.

    Mein erster Ansatz war nun dies mit onPause() zu machen. Anscheinend ist dies aber eher gedacht um z.B. aktuelle Daten zu Speichern und ähnliches. Ein neues Programm kann scheinbar ja erst gestartet werden wenn dies ausgeführt ist?
    Desshalb meine Frage: Wie kriege ich ein Timer in den Hintergrund welcher alle X Sekunden einen Webrequest an den Server schickt um den Alarm zu Testen?
    Leider liegt Polling momentan nicht drin, da der VB Webserver max 1Request gleichzeitig abarbeiten kann. Dies würde dann also die Steuerung von anderen Funktionen Sperren.
    Alternative wäre aber ein kleinen Webserver in das APP einzubauen um den Stromverbrauch zu reduzieren. Das APP und der VB Server laufen nur in einem Netz und mit statischen IPs.

    Vielen Dank für die Antwort(en)
    0
     

  2. Mein erster Ansatz war nun dies mit onPause() zu machen.
    Nein, da hast du recht. Sowas gehört hier nicht hin. Siehe dazu den Activity Lifecycle.

    Desshalb meine Frage: Wie kriege ich ein Timer in den Hintergrund welcher alle X Sekunden einen Webrequest an den Server schickt um den Alarm zu Testen?
    Alle XSekunden eine Verbindung aufzubauen wird deinen Akku sehr belasten.
    Was du tun müsstest, wäre einen Service zu implementieren, der im Hintergrund ständig den Webserver nach Alarmen abfragt. Zusätzlich kannst du noch via AndroidManifest.xml festlegen, dass dieser Service alle paar Minuten erneut gestartet wird, falls er mal abstürzt.


    Egal welche deiner Ideen du nutzen würdest, es würde ständig Akku, Rechenleistung und RAM verbrauchen... Nicht zu empfehlen.

    Die einzig richtige Lösung für sowas wäre der Einsatz einer Push Lösung (zB. via Google Cloud to Device messaging). Dein Android Handy ist eh damit verbunden - Es würde also keinen nennenswerten zusätzlichen Stromverbrauch verursachen. Aber es ist auch nicht ganz einfach.
    0
     

  3. 12.04.2012, 08:38
    #3
    Danke dir für deine Antwort.

    Ich habe beim VB Programm nun so umgeschrieben das Polling Funktioniert und ich somit nur eine Aktive Verbindung gebrauche wie das auch bei anderen Pushdiensten der Fall ist.
    Das ganze klappt nun auch sehr gut, nur beendet sich der Service den ich zur APP geschrieben habe alle Paar Stunden obwohl ich bei onDestroy() den Service wieder neustarte.

    Kannst du mir sagen wie ich die Manifestdatei bearbeiten muss damit sich der Service bei einem Absturz wieder starten würde?

    Akku ist eigentlich eher kein Problem, da ich dies eigentlich nur Zuhause brauche und somit 90% eh immer am Strom bin. Aber mit dem Polling habe ich kein erhöhten Verbrauch festgestellt in meiner Testzeit.
    0
     

  4. Das ganze klappt nun auch sehr gut, nur beendet sich der Service den ich zur APP geschrieben habe alle Paar Stunden obwohl ich bei onDestroy() den Service wieder neustarte.
    Das gehört nicht in onDestroy(). Lies dir den ersten Link, den ich gepostet habe, bitte komplett durch.

    Kannst du mir sagen wie ich die Manifestdatei bearbeiten muss damit sich der Service bei einem Absturz wieder starten würde?
    Ich nehme an, du könntest einen AlarmManager verwenden, der zB. alle 30 Minuten einen Intent versendet. Auf diesen Custom event kannst du dann in deinem Manifest via IntentReceiver achten und daraufhin den Service restarten oder so. Siehe zB. [Anleitung] Ein Digitaluhr Widget programmieren für ein Beispiel des AlarmManagers sowie eines Intent Receivers.
    Ich habe das selber aber mit einem Service noch nie gemacht.
    0
     

Ähnliche Themen

  1. Zu viele Apps laufen im hintergrund!
    Von losamigos im Forum HTC Desire Sonstiges
    Antworten: 9
    Letzter Beitrag: 22.11.2010, 19:54
  2. Programme laufen im Hintergrund - schliessen?
    Von svencux im Forum HTC Legend
    Antworten: 2
    Letzter Beitrag: 20.03.2010, 16:38
  3. Programme laufen im hintergrund?
    Von Unregistriert im Forum HTC HD2 Kommunikation
    Antworten: 3
    Letzter Beitrag: 28.01.2010, 09:11
  4. Welche Programme laufen im Hintergrund
    Von ralf1234 im Forum HTC Touch Diamond 2
    Antworten: 7
    Letzter Beitrag: 10.12.2009, 10:33
  5. ICQ und Twitter im Hintergrund laufen lassen ?
    Von Jetiman im Forum Touch HD Anwendungsprogramme
    Antworten: 5
    Letzter Beitrag: 09.07.2009, 18:19

Besucher haben diese Seite mit folgenden Suchbegriffen gefunden:

android app im hintergrund laufen lassen

android youtube im hintergrund laufen lassen

android apps im hintergrund laufen lassen

samsung galaxy s2 youtube im hintergrund

android programme im hintergrund laufen lassen

samsung galaxy ace youtube im hintergrund laufen lassen

galaxy s2 youtube im hintergrund

youtube im hintergrund android

android 4.0 youtube im hintergrund

youtube app im hintergrund laufen lassen

app im hintergrund laufen lassen android

youtube im hintergrund laufen lassen android

android programm im hintergrund laufen lassens3 youtube im hintergrundapps im hintergrund laufen lassen androidapp im hintergrund laufen lassenandroid anwendungen im hintergrund laufen lassengalaxy s2 youtube hintergrundjava programm im hintergrund laufen lassengalaxy s3 youtube hintergrundandroid YouTube Hintergrunds3 youtube im hintergrund laufen lassenandroid youtube hintergrund laufen lassenprogramm im hintergrund laufen lassengalaxy s3 youtube im hintergrund laufen lassen

Stichworte