2010-07-06 10 views
5

Ich habe eine Musik-Player-App geschrieben und es funktioniert super, aber wenn eine Flip-Aktion passiert oder wenn ich die Player-Ansicht zurückgebe, muss ich den Player stoppen und an der Stelle neu starten, an der es war Aktion ist passiert. Das alles funktioniert, aber es bedeutet einen kurzen Stopp und Start.Android Media Player Threading

Wie kann ich den Media Player in einem anderen Thread ausführen und trotzdem meine Suchleiste aktualisieren?

Dank

Antwort

6

Versuchen Sie den Media-Player in einem foreground service läuft. Es ist ein bisschen Arbeit, aber so sollte es auch gemacht werden.

Der Dienst verarbeitet alle Vorgänge in einem Hintergrundthread und kann so eingerichtet werden, dass Aktualisierungen der Benutzeroberfläche über Nachrichten oder Rückrufe gepostet werden.

Außerdem muss ein Foreground-Dienst nicht an eine Aktivität gebunden sein, damit er auch dann ausgeführt werden kann, wenn Sie den Player-Bildschirm verlassen. Der Dienst muss dem Benutzer eine fortwährende Benachrichtigung bereitstellen, die wahrscheinlich den aktuellen Titel, den Interpreten oder die Pause anzeigt.

+0

IntentServices wird in einem separaten Thread ausgeführt, während reguläre Dienste standardmäßig im UI-Thread ausgeführt werden. –