Media Player schaltet nach ein paar Minuten im Standby ab

  • Hallo zusammen

    Ich bin totaler Neuanfänger im Programmieren und wollte eine Stream Radio App programmieren.Ich bin grad an einem Kurs dran und habe mir auch verschieden Tutorials angeschaut.
    Der Player läuft mit einem Wake Lock und einem Wifi Lock. Aber sobald das Smartphone im Standby ist läuft er nur noch ca. 5-10 Minuten dann schaltet er ab. Ich habe auch schon den Energiesparmodus angepasst... Nützt alles nichts
    Ich hoffe ihr könnt mir helfen...

    Hier der Code

    Edited once, last by fischer90 (January 28, 2018 at 6:31 PM).

  • Hi, wie hast du den Service im Manifest definiert?
    Als lokalen im gleichen Prozess laufenden oder als remoute Service in einen eigenen Prozess?
    Bedenke das ein lokaler Service auch im ui Thread läuft. Wenn du keinen eigenen benutz.
    Auch ein Service sollte in einem eigenen Thread laufen. Da kann ich in deinem Code nichts erkennen.

  • Vielen Dank für die schnelle Antwort :) .
    Den Service im Manifest:

    Code
    <service android:name=".myService"/>

    Auch wenn ich es ohne Service laufen lasse klappt es nicht...
    Nur wenn es nicht im Standby ist läuft es einwandfrei.

  • Das ist ein lokaler Service.
    Du solltest die Play Routine in einen eigenen Thread laufen lassen.
    Denn wenn die App im Hinderund oder auch Standby ist kann das System Android die App beenden um Ressourcen zu sparen. Da alles im selben Thread läuft wird auch der Service beendet.

    Am unabhängigsten von der App ist ein Service im eigenen Prozess. Er benutz auch einen eigenen Heap Speicherbereich.

    Auch wenn ich es ohne Service laufen lasse klappt es nicht..
    Wie meist du das?

    Zeit intensive arbeiten gehören in einen eigenen Thread. Das abspielen von Musik ist ein Paradebeispiel für das abbrechen des UI Thread.

    https://www.google.de/url?sa=t&sourc…vt-3xpNMfAlSk4r

    http://www.aviyehuda.com/blog/2010/12/2…ui-environment/

    https://developer.android.com/guide/componen…nd-threads.html

    Edited 7 times, last by nono124 (January 29, 2018 at 6:25 AM).

  • Ein Service ist hier die richtige wahl. Alle lang laufenden Prozesse sollten in Services ausgelagert werden. Über einen Handler kannst du auch aus dem Service heraus mit deiner Activity kommunizieren.

    Edited once, last by Ben (January 29, 2018 at 4:25 PM).

  • ich habe ihm auch als erstes gesagt das er die zeitintensive play Methode in einen eigenen Thread laufen lassen soll. Denn ein lokaler Service läuft meines Wissens im UI Thread. Ein Intent Service hat von sich aus einen eignen Thread dafür ist keine Kommunikation möglich habe ich auch gesagt.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!