TV-Apps, die Audio wiedergeben, können dies auch weiterhin tun, wenn der Nutzer zum Startbildschirm zurückkehrt oder zu einer anderen App wechselt. Dazu muss in der App eine Now Playing-Karte im Zuhause angezeigt werden. Bildschirm. Auf dieser Karte sehen Nutzer, woher das Audio stammt, und können dann zu deiner App zurückkehren die Medienwiedergabe zu steuern.
Wenn ein aktiver Nutzer
MediaSession
ist
dargestellt wird, wird im Android-Framework auf dem Startbildschirm die Karte Now Playing angezeigt. Die Karte
enthält Medienmetadaten wie Albumcover, Titel und App-Symbol. Wenn der Nutzer die Karte auswählt,
öffnet das System die App.
Now Playing-Karte
Legen Sie nach der Implementierung einer Mediensitzung aktivieren und den Audiofokus anfordern, wird die Karte Läuft gerade angezeigt.
Hinweis:Die Karte Läuft gerade wird nur bei Medieninhalten
mit der
FLAG_HANDLES_TRANSPORT_CONTROLS
gesetzt. Dieses Flag wird auf API-Level 26 eingestellt. Auf älteren Geräten kann dieses Flag jedoch aus Gründen der Abwärtskompatibilität weiterhin erforderlich sein.
Die Karte wird vom Launcher entfernt, wenn
setActive(false)
deaktiviert die Mediensitzung oder wenn eine andere App die Medienwiedergabe startet. Wenn die Wiedergabe
vollständig angehalten und es sind keine aktiven Medien vorhanden, deaktivieren Sie die Mediensitzung
sofort. Wenn die Wiedergabe pausiert ist, deaktivieren Sie die Mediensitzung nach einer Verzögerung.
normalerweise zwischen 5 und 30 Minuten.
Karte aktualisieren
Immer wenn deine App den Wiedergabestatus in MediaSession
aktualisiert, wird das Ereignis
Die Karte Now Playing wird aktualisiert und zeigt den Status des aktuellen Mediums an. Informationen dazu finden Sie unter
Aktualisiere den Wiedergabestatus.
Ebenso kann Ihre App die
MediaMetadata
zum Bereitstellen
Informationen zum aktuellen Medium auf der Karte Läuft gerade, z. B. Titel, Untertitel,
und verschiedene Symbole. Informationen dazu finden Sie unter
Aktualisiere die Medienmetadaten.
Auf Nutzeraktion reagieren
Wenn der Nutzer die Karte Läuft gerade auswählt, öffnet das System die App, zu der das Gerät gehört.
Sitzung. Wenn Ihre App eine
PendingIntent
bis
setSessionActivity()
,
startet das System die von Ihnen angegebene Aktivität, wie im folgenden Code-Snippet gezeigt. Falls nicht,
wird der Standard-System-Intent geöffnet. Die angegebene Aktivität muss über Steuerelemente für die Wiedergabe verfügen, die
damit Nutzer die Wiedergabe pausieren oder beenden können.
Kotlin
val pi: PendingIntent = Intent(context, MyActivity::class.java).let { intent -> PendingIntent.getActivity( context, 99 /*request code*/, intent, PendingIntent.FLAG_UPDATE_CURRENT ) } session.setSessionActivity(pi)
Java
Intent intent = new Intent(context, MyActivity.class); PendingIntent pi = PendingIntent.getActivity(context, 99 /*request code*/, intent, PendingIntent.FLAG_UPDATE_CURRENT); session.setSessionActivity(pi);
Zulässige Anwendungsfälle
Die Karte Now Playing sollte nur verwendet werden, wenn der Nutzer erwartet, dass die Audiowiedergabe fortgesetzt wird. die beim Verlassen der App im Hintergrund wiedergegeben werden. Die Videowiedergabe oder der Ton eines Spiels sollten immer Die Funktion wird pausiert, es sei denn, deine App lässt sich einbinden und unterstützt die Funktion „Bild im Bild“.