1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

Broadcast Reciever Lebenszeit wenn aus Service gestartet

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von FelixL, 22.07.2010.

  1. FelixL, 22.07.2010 #1
    FelixL

    FelixL Threadstarter Ehrenmitglied

    Beiträge:
    4,855
    Erhaltene Danke:
    754
    Registriert seit:
    26.11.2009
    Phone:
    Wileyfox Swift, HTC One M8
    Ich will ACTION_HEADSET_PLUG abfangen.
    Erst hab ich's über einen statischen Broadcast-Reciever versucht (also übers xml registriert). Praktischerweise funktioniert dies aber nicht -.-:

    [android-developers] Re: Capturing HEADSET_PLUG (android.intent.action.H
    Sprich man muss das Ding über den Code anmelden (registerReceiver()).
    Damit ich also jeden dieser Events abfange, muss ich nach dem Booten einen Service starten (soweit kein Problem) der dann den Receiver anmeldet, auf sich selbst. Jetzt ist die Frage was passiert wenn der Service beendet wird. Kommen die Events noch an, wird der Service quasi neu gestartet? Oder erzeuge ich einen Fehler? Darauf würde dieser Link hinweisen:
    BroadcastReceiver on Service - Android Developers | Google Groups
    Wie stelle ich also sicher, das ich die Events alle empfange?

    Danke, FelixL
     
  2. FelixL, 23.07.2010 #2
    FelixL

    FelixL Threadstarter Ehrenmitglied

    Beiträge:
    4,855
    Erhaltene Danke:
    754
    Registriert seit:
    26.11.2009
    Phone:
    Wileyfox Swift, HTC One M8
    Ich antworte mir mal selbst:
    Service | Android Developers, int, int)
    Damit kann ich festlegen, das ein Service, der vom System wegen Ressourcenmangel gekillt wurde wieder gestartet wird sobald Ressourcen frei sind.

    Gibt es sowas ähnliches für APILevel<5? (Ich denke mal nicht -.-)
    Unnd noch eine Offtopic-Frage:
    Wenn das Gerät schläft und jemand das Headset rauszieht, wird es dann geweckt und der Broadcast kommt bei mir an?

    Edit: Mal ganz nebenbei ist ein ständig laufender Service sowieso nicht Best-Practice, das ist mir klar ;)
    Auch wenn er nur im RAM rumliegt.
     
    Zuletzt bearbeitet: 23.07.2010

Diese Seite empfehlen