Wyświetl kartę Co jest grane

Aplikacje na telewizory, które odtwarzają dźwięk, mogą nadal to robić po powrocie użytkownika do ekranu głównego. przełączy się na inną aplikację. Aby to zrobić, aplikacja musi udostępnić kartę Co jest grane na ekranie głównym ekranu. Dzięki tej karcie użytkownicy będą wiedzieć, skąd pochodzi dźwięk, i będą mogli wrócić do aplikacji, sterować odtwarzaniem multimediów.

Zawsze, gdy jest aktywny MediaSession to platforma Androida wyświetla kartę Co jest grane na ekranie głównym. Karta zawiera metadane multimediów, takie jak okładka albumu, tytuł czy ikona aplikacji. Gdy użytkownik wybierze kartę, system uruchomi aplikację.

Karta Co jest grane

Po zaimplementowaniu sesji multimediów ustaw parametr i poprosić o aktywację dźwięku, pojawi się karta Co jest grane.

Uwaga: karta Co jest grane wyświetla się tylko w przypadku multimediów sesji z FLAG_HANDLES_TRANSPORT_CONTROLS flagi. Ta flaga została wycofana na poziomie interfejsu API 26. Jednak ta flaga może być nadal potrzebna na starszych urządzeniach ze względu na zgodność wsteczną.

Karta jest usuwana z ekranu programu uruchamiającego, gdy setActive(false) dezaktywuje sesję multimediów lub gdy inna aplikacja rozpocznie odtwarzanie multimediów. Jeśli odtwarzanie jest zostało całkowicie zatrzymane i nie ma aktywnych multimediów, wyłącz sesję multimediów natychmiast. Jeśli odtwarzanie jest wstrzymane, dezaktywuj sesję multimediów po opóźnieniu. zwykle od 5 do 30 minut.

Zaktualizuj kartę

Za każdym razem, gdy aplikacja aktualizuje stan odtwarzania w MediaSession, makro Karta Co jest grane aktualizuje się, pokazując stan aktualnie odtwarzanych multimediów. Aby dowiedzieć się, jak to zrobić, zobacz Aktualizacja stanu odtwarzania

Aplikacja może też aktualizować MediaMetadata do podania informacje na karcie Co jest grane, np. tytuł, podtytuł, i różnych ikon. Aby dowiedzieć się, jak to zrobić, zobacz Zaktualizuj metadane multimediów.

Reagowanie na działanie użytkownika

Gdy użytkownik wybierze kartę Co jest grane, system otworzy aplikację, do której należy dane słowo . Jeśli aplikacja udostępnia PendingIntent do setSessionActivity(), system uruchomi określoną aktywność, zgodnie z poniższym fragmentem kodu. Jeśli nie, otworzy się domyślna intencja systemowa. Określona aktywność musi zapewniać elementy sterujące odtwarzaniem, umożliwiać użytkownikom wstrzymywanie i zatrzymywanie odtwarzania.

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);

Akceptowane przypadki użycia

Karty Co jest grane należy używać tylko w przypadkach, gdy użytkownik oczekuje, że dźwięk będzie nadal odtwarzany. odtwarzania w tle po wyjściu z aplikacji. Odtwarzanie filmu lub dźwięku z gry zawsze powinno chyba że aplikacja integruje się z funkcją obraz w obrazie i jest z nią zgodna.