Routing między urządzeniami

Użytkownicy łączą swoje telewizory, systemy kina domowego i odtwarzacze muzyczne z technologiami bezprzewodowymi, aby móc odtwarzać treści z aplikacji na Androida na tych większych, głośniejszych urządzeniach. Włączenie tego typu odtwarzania może sprawić, że aplikacja przeznaczona dla jednego urządzenia i jednego użytkownika stanie się wspólnym narzędziem, które zachwyci i zainspiruje wielu użytkowników.

Interfejsy API routera multimedialnego na Androidzie umożliwiają wyświetlanie i odtwarzanie multimediów na urządzeniach zdalnymi odbiornikami za pomocą wspólnego interfejsu użytkownika. Deweloperzy aplikacji, którzy implementują interfejs MediaRouter, mogą łączyć się z tą platformą i odtwarzać treści na urządzeniach, które korzystają z ramy routera multimedialnego. Producenci urządzeń do odtwarzania multimediów mogą korzystać z ramy, publikując MediaRouteProvider, który pozwala innym aplikacjom na połączenie się z odbiornikami i odtwarzanie multimediów na tych urządzeniach. Rysunek 1 przedstawia, jak aplikacja łączy się z urządzeniem odbiorczym za pomocą interfejsu Media Router Framework.

Rysunek 1. Omówienie sposobu, w jaki klasy dostawców ścieżek multimedialnych zapewniają komunikację z aplikacji multimedialnej do urządzenia odbiorczego

Uwaga: jeśli chcesz, aby Twoja aplikacja obsługiwała urządzenia Google Cast, użyj pakietu SDK Cast i utwórz aplikację jako nadajnik Cast. Zamiast bezpośrednio korzystać z ramy MediaRouter, postępuj zgodnie z instrukcjami podanymi w dokumentacji Cast.

Biblioteka pomocy MediaRouter

Interfejsy API MediaRouter są zdefiniowane w bibliotece MediaRouter AndroidX. Ta biblioteka jest zgodna z urządzeniami z Androidem 2.3 (poziom interfejsu API 9) lub nowszym i zapewnia spójne działanie na wszystkich tych urządzeniach. Szczegółowe informacje o interfejsach API mediarouter znajdziesz w pakiecie androidx.mediarouter.media w dokumentacji interfejsu API.

MediaRouter API
Aplikacja multimedialna korzysta z interfejsu MediaRouter API, aby wykrywać dostępne urządzenia do odtwarzania zdalnego i przesyłać do nich dźwięk i obraz.
MediaRouteProvider API
Interfejs API MediaRouteProvider definiuje możliwości zdalnego urządzenia do odtwarzania i czyni je widocznym dla aplikacji, które korzystają z interfejsu MediaRouter do wyszukiwania alternatywnych ścieżek multimediów.

Przełącznik wyjścia

Począwszy od Androida 11 opcje routingu aplikacji są też widoczne w systemowym odtwarzaczu multimediów. Dzięki temu użytkownik może płynnie przełączać się między urządzeniami, gdy zmienia kontekst oglądania i słuchania, np. oglądać film w kuchni lub na telefonie albo słuchać dźwięku w domu lub w samochodzie.

Po naciśnięciu przycisku wyboru trasy w powiadomieniu o multimediów wyświetli się przełącznik wyjścia z tymi domyślnymi opcjami:

  • Głośnik na bieżącym urządzeniu
  • Wszystkie podłączone urządzenia audio Bluetooth

Aplikacje mogą też udostępniać więcej opcji w zależności od ich możliwości, np. przesyłania treści.

Aplikacje mogą używać interfejsu API MediaRouter do dostosowywania opcji kierowania. Możesz wykluczać urządzenia, których nie obsługujesz (np. filtrować Chromecasta z tylko dźwiękiem, jeśli oglądasz Netflixa na telewizorze smart TV) lub uwzględniać inne specjalne urządzenia, które rozpoznaje Twoja aplikacja.