Rozwój Android TV – nadchodzą duże ekrany, przygotuj się!
Opublikowany: 2022-03-11Google chce wprowadzić Androida do wszystkiego, od telefonów i zegarków po samochody i inteligentne telewizory. Po pierwsze, w interesie pełnego ujawnienia, muszę powiedzieć, że jestem nieco stronniczy, jeśli chodzi o platformy smart TV, więc usuńmy to z drogi. Myślę, że większość, jeśli nie wszystkie platformy smart TV na rynku są wręcz okropne, ale to tylko ja. Google uważa, że może działać lepiej i jestem skłonny wierzyć, że naprawdę może działać lepiej, a przynajmniej mam nadzieję, że tak, zarówno jako konsument, jak i entuzjasta technologii.
Czym więc jest Android TV? Wiele osób myli ją z Google TV, nieistniejącą platformą wydaną w 2010 roku. Została opracowana przez Google, Sony, Intel i Logitech, ale nigdy nie zyskała na popularności. Została oficjalnie zastąpiona przez Android TV w połowie 2014 roku, a ta nowa platforma jest o wiele bardziej ekscytująca zarówno dla konsumentów, jak i programistów.
W przeciwieństwie do Google TV, Android TV jest znacznie bliżej standardowego Androida. Działa na Androidzie 5.0 (przynajmniej w początkowej wersji startowej) i może być używany na nowych telewizorach, a także na samodzielnych urządzeniach. To dobra wiadomość, ponieważ Android TV trafi na niedrogie urządzenia i pendrive'y z Androidem, zapewniając takie same wrażenia użytkownika milionom starych telewizorów. W rzeczywistości pierwszym urządzeniem z Android TV wcale nie jest telewizor, to Nexus Player firmy Google. Jest to również odpowiedź na jedną z największych skarg na różne platformy smart TV w przeszłości: brak spójności. Android TV powinien zapewnić niemal identyczne wrażenia użytkownika na wszystkich kompatybilnych urządzeniach.
Rewolucja nie będzie transmitowana w telewizji, będzie transmitowana na żywo
Jeśli chodzi o nowe funkcje, Android TV wprowadza również obsługę Google Cast. Być może znasz Google Cast z kija Chromecasta. Technologia jest już obsługiwana przez setki aplikacji i usług, a kolejne są w przygotowaniu. Google Cast umożliwia urządzeniom Android TV odbieranie treści przesyłanych strumieniowo z różnych urządzeń. Implementacja jest prosta dzięki interfejsowi Google Cast API, a wszystkie potrzebne informacje znajdziesz w witrynie deweloperskiej Google Cast.
Czy to oznacza, że Google chce zmienić firmy kablowe w „głupich rur” i po prostu wykorzystywać ich przepustowość, a nie zawartość? Niezupełnie, ale wszystko jest możliwe, zwłaszcza gdy mnożą się platformy smart TV.
Jednak streaming nie jest jedynym atutem Google.
Android TV stwarza również nowe możliwości komunikacji, gier, automatyki domowej i nie tylko. Android TV może stać się centrum dla wszelkiego rodzaju podłączonych urządzeń z systemem Android lub innymi platformami. Możesz go użyć, aby zobaczyć, kto stoi przed drzwiami, wyregulować klimatyzację lub podłączony termostat, a może nawet zsynchronizować żarówki LED RGB z telewizorem podczas oglądania klasyków akcji z lat 80.
To prawda, że niektóre z tych rzeczy mogą brzmieć sztucznie, ale Android TV nie służy do sztuczek; nie będzie to platforma niszowa, taka jak Android Wear czy Android Auto. Nie tak dawno tylko entuzjaści kupowali inteligentne telewizory i smartfony, ale telefony z funkcjami i tradycyjne telewizory już prawie zniknęły. Android TV trafi do telewizorów w milionach domów; naprawdę nie ma co do tego wątpliwości.
To dobra wiadomość dla programistów Androida, ponieważ baza użytkowników z pewnością będzie szybko rosła, zmniejszając w ten sposób ryzyko związane z nową platformą do tworzenia aplikacji Android TV.
Android TV – co kryje się pod maską?
Jeśli chodzi o sprzęt, zobaczymy standardowe ekrany Androida FHD (1080p) i UHD (3840x2160). Istnieje również duża szansa, że niektórzy producenci wprowadzą w przyszłości Android TV do zakrzywionych jednostek 21:9, ale na razie uwaga skupi się na panelach 16:9. Projektanci interfejsu użytkownika muszą o tym pamiętać.
Ponieważ jest oparty na systemie Android 5.0 (poziom API 21) i używa ART, większość sprzętu Android TV będzie wyposażona w procesory 64-bitowe. Nexus Player jest oparty na procesorze Intel Atom, wiele nadchodzących Android TV będzie wyposażonych w procesor MediaTek MT5595, podczas gdy konsola Nvidia Shield, o której już wspomniałem w poprzednim poście, korzysta z procesora Tegra X1. Oferta System-on-Chip (SoC) Intela i Nvidii jest oparta na 64-bitowych rdzeniach procesora, podczas gdy MediaTek wykorzystuje 32-bitowe rdzenie Cortex-A17 i Cortex-A7.
Cały sprzęt Android TV będzie musiał obsługiwać dekodowanie HEVC i VP9 i są szanse, że większość tych chipów będzie w stanie obsłużyć jednocześnie kilka strumieni innych niż UHD. Dostarczanie treści UHD z prędkością 60 klatek na sekundę również nie powinno stanowić problemu. Na pokładzie znajduje się również szybka, dwuzakresowa sieć bezprzewodowa, zapewniająca wystarczającą przepustowość dla strumieni UHD.
Platformy sprzętowe Android TV będą opierać się na wielu oprogramowaniu pośredniczącym i będą zgodne z wieloma standardami nadawania, które obejmują każdy region i rynek.
W sprzęcie nie ma nic egzotycznego, a programiści nie mają się czym martwić. Wiele DNA Androida 5.0 zapewnia płynne przejście na froncie oprogramowania, ale należy pamiętać o kilku rzeczach.
Android wkracza na duży ekran
Co to wszystko oznacza dla programistów? Rozwój Android TV brzmi prosto, ale szybki rzut oka na specyfikację nie daje pełnego obrazu. Podczas gdy wielu programistów i projektantów powinno czuć się jak w domu, muszą również zadbać o to, aby użytkownicy czuli się jak w domu – w końcu Android TV jest przeznaczony do salonu.
Zacznijmy od dobrych wieści. Większość urządzeń Android TV będzie używać paneli 16:9 w zaledwie dwóch rozdzielczościach, więc wiele rzeczy zostanie ujednoliconych. Pomoże to poprawić spójność i powinno nieco ułatwić testowanie.
- Działa w jednym współczynniku proporcji, 16:9 (chociaż urządzenia 21:9 mogą pojawić się w przyszłości).
- Projektując dla dwóch rozdzielczości, FHD i UHD, tylko gęstość różni się w zależności od rozmiaru ekranu.
- Korzystanie z wielu standardowych elementów interfejsu użytkownika.
- Nie musisz myśleć o wprowadzaniu dotykowym.
- Niewiele czujników do załatwienia.
- Wydajność energetyczna nie ma znaczenia.
Jednak tworzenie aplikacji dla Android TV wiąże się również z szeregiem nowych wyzwań, z którymi trzeba się zmierzyć. Ponieważ w samym telewizorze nie ma wprowadzania dotykowego (chociaż do wprowadzania danych można używać tabletów i telefonów), będziemy musieli poradzić sobie z innymi metodami wprowadzania, takimi jak piloty, myszki powietrzne innych firm, klawiatury, kontrolery gier i tak dalej . Istnieje również wiele starszych elementów Androida, które muszą zostać usunięte (na przykład nie ma trybu portretowego). Różnice w gęstości pikseli są znacznie większe, brak wprowadzania dotykowego może być problematyczny dla niektórych programistów i tak dalej.
Oto niektóre z wyzwań:
- Obsługa wielu kontrolerów jednocześnie.
- Obsługa różnych typów kontrolerów, tj. standardowych pilotów i kontrolerów gier.
- Mało czujników na pokładzie.
- Overscan może być problemem na niektórych urządzeniach.
- Znacznie różna gęstość pikseli nawet w tej samej rozdzielczości (telewizory są w znacznie większej liczbie rozmiarów niż tablety i telefony).
- Usuń niepotrzebne elementy.
Przyjrzyjmy się bliżej niektórym z tych zagadnień. Ponieważ telewizory z systemem Android będą używane jako centra multimedialne, prawdopodobnie ludzie będą chcieli używać na nich więcej niż jednego kontrolera. Niektórzy mogą chcieć klawiatury Bluetooth, podczas gdy inni mogą otrzymać dwa kontrolery gier do niektórych akcji dla wielu graczy. Dobrą wiadomością jest to, że prawdopodobnie nie będziesz potrzebować niestandardowego kodu, aby zaimplementować obsługę dodatkowych wejść kontrolera, ponieważ standardowe wejście kontrolera gier Android może być używane w interfejsie użytkownika i aplikacjach, takich jak gry. Jednak może być konieczne zaadresowanie więcej niż jednego urządzenia wejściowego, a jeśli potrzebujesz dodać obsługę bardziej egzotycznych kontrolerów, konieczne mogą być pewne poprawki.
Większość telewizorów z systemem Android jest dostarczana z ograniczonym pakietem czujników. Dlaczego miałbyś potrzebować GPS w telewizorze? Dlatego konieczne jest wyłączenie obsługi funkcji sprzętowych niedostępnych na telewizorach. Istnieje wiele szczegółowych informacji o tym, jak wszystko uporządkować; po prostu oznacz nieobsługiwane czujniki jako fałszywe i to wszystko.
Musisz także przejrzeć manifest aplikacji na Androida i sprawdzić, czy nie wykluczy on urządzeń Android TV z powodu ich braku funkcji.
Na przykład standardowe uprawnienie ACCESS_FINE_LOCATION
używa GPS. Ponieważ na pokładzie nie ma GPS, manifest aplikacji powinien zawierać następujące elementy:

<uses-feature android:name="android.hardware.gps" android:required="false"/>
Dlatego będziesz musiał zmienić ACCESS_FINE_LOCATION
na ACCESS_COARSE_LOCATION
. Ta sama zasada dotyczy innych aspektów platformy, a szczegóły są dostępne w Google. Innym zasobem, który możesz chcieć sprawdzić, jest Przewodnik programisty Android TV firmy Nvidia.
Jeśli myślisz o ponownym wykorzystaniu materiałów z innych projektów na Androida, warto o tym pamiętać, w przeciwnym razie możesz skończyć z aplikacją, która próbuje otworzyć menu w trybie portretowym na telewizorze, co prowadzi mnie do następnego punktu:
Interfejs Android TV 10 stóp
Chociaż Android TV to w zasadzie Android 5.0, interfejs użytkownika ma niewiele wspólnego z systemem Android, jaki znamy. Platformy Smart TV stosują podejście „10 stóp”, co zasadniczo oznacza, że wrażenia użytkownika są zoptymalizowane dla odległości 10 stóp od ekranu, około dziesięć razy więcej niż na smartfonie lub tablecie.
Koncepcja „10 stóp” poprzedza platformy smart TV. Był również używany w projektowaniu ekranów ekranowych (OSD), projektowaniu desek rozdzielczych konsoli do gier i był zwykle używany w popularnych systemach surround 5.1. Więc co to oznacza dla doświadczenia użytkownika i projektowania interfejsu użytkownika?
Cóż, projektanci muszą upewnić się, że wszystko wygląda dobrze na różnych panelach, od niedrogich 37-calowych telewizorów 1080p po 65-calowe lub 75-calowe potwory w UHD. Interfejs użytkownika musi działać dobrze w FHD i UHD, niezależnie od rozmiaru ekranu. Chociaż mamy do czynienia tylko z kilkoma różnymi rozdzielczościami, gęstość pikseli (piksele na cal lub ppi) jest bardzo zróżnicowana.
Oto kilka przykładów:
- 42-calowy panel UHD – 105ppi
- 42-calowy panel FHD – 52ppi
- 50-calowy panel UHD – 88ppi
- 50-calowy panel FHD – 44ppi
- 55-calowy panel UHD – 80ppi
- 65-calowy panel UHD – 67ppi
- 32-calowy panel FHD – 69ppi
Jest mało prawdopodobne, że zobaczymy panele UHD na telewizorach z systemem Android o rozmiarach paneli w zakresie 30-40 cali, ale powinniśmy zobaczyć wiele urządzeń FHD działających w tym segmencie. Wielu konsumentów po prostu wyjdzie i kupi nowe telewizory z Androidem, zamiast wymieniać istniejące telewizory 1080p. Chociaż wielu producentów telewizorów zacznie używać paneli 4K w ponad 40-calowych modelach, programiści nadal muszą myśleć o obsłudze starszych wersji.
Dlatego też musimy pamiętać, że problemem może być nadmierne skanowanie. Wiele telewizorów wyposażonych w dekodery Android TV straci część powierzchni ekranu w kierunku ramki. Każdy, kto zna filmy wideo, wie już co nieco o bezpiecznych ramkach (bezpieczne działanie i bezpieczne tytuł); jest to powrót do czasów telewizorów CRT o standardowej rozdzielczości, ale nadal dobrym pomysłem jest pozostawanie po bezpiecznej stronie i unikanie umieszczania ważnych elementów interfejsu użytkownika w pobliżu krawędzi. Staraj się, aby co najmniej 5 procent obszaru było wolne od ważnych treści i używaj jeszcze bezpieczniejszego marginesu dla naprawdę ważnych elementów interfejsu użytkownika; 10 procent powinno wystarczyć, ale jeśli chcesz być całkowicie bezpieczny, możesz wybrać jeszcze więcej.
Pamiętaj, że ten konkretny problem nie występuje na tabletach ani smartfonach. Na szczęście nie oznacza to, że Google nie wziął tego pod uwagę, więc obsługa overscan jest wbudowana w Android TV (i rzeczywiście inne wersje Androida po 4.2.x). Jeśli myślisz o korzystaniu z OpenGL, musisz również rozwiązać ten problem.
Overscan prawdopodobnie nie będzie problemem w przypadku prawdziwych telewizorów z systemem Android, ale może być poważnym problemem w przypadku rozwiązań Android TV na rynku wtórnym. Nie każdy chce aktualizować swój telewizor co kilka lat, a wiele osób otrzyma zamiast tego klucz HDMI o wartości 50 USD z Android TV. Dlatego dobrym pomysłem jest uwzględnienie opcji konfiguracji overscan w aplikacji Android TV.
Innym dobrym pomysłem jest zapoznanie się z najlepszymi praktykami Google dotyczącymi obsługi wielu ekranów. To proste, ale ważne; prawdopodobnie będziesz musiał uwzględnić dodatkowe „kompatybilne ekrany” w manifeście aplikacji.
Poprawa doświadczenia użytkownika Android TV
Doświadczenie użytkownika zawsze było problemem dla platform smart TV. Android TV to Google TV zrobione dobrze i powinno poprawić UX, ale nie od razu po wyjęciu z pudełka; programiści będą musieli wykonać wiele ciężkich prac.
Dobrą wiadomością jest to, że telewizory tak naprawdę nie wymagają dużego wkładu i zaangażowania użytkownika; każdy kanapowy ziemniak to potwierdzi! Twórcy telewizorów spędzili już lata na dopracowywaniu interfejsów smart TV i poprawianiu komfortu użytkowania dzięki szybszym, bardziej eleganckim interfejsom użytkownika i nowemu sprzętowi, takiemu jak nowe piloty z czujnikami. Sprawy toczyły się dobrze nawet bez Android TV, ale nowa platforma Google otwiera więcej możliwości.
Powiedziałem już, że jestem trochę sceptykiem smart TV, ale nawet ja muszę przyznać, że w ciągu ostatnich kilku lat poczyniono duże postępy. Jednak Android TV to nie tylko poprawa sposobu, w jaki ludzie konsumują treści telewizyjne, ale bardziej zmiana sposobu, w jaki to robią.
Jeśli jesteś typem użytkownika, który po prostu lubi oglądać wiele wydarzeń sportowych i politycznych za jednym zamachem (jak mój emerytowany i znudzony tata), UX jest refleksją. To samo dotyczy ludzi takich jak ja, którzy trzymają telewizor w tle, słuchając wiadomości lub muzyki, tak jak mogliby to zrobić ze starym radiem wentylowym. Jednak sposób, w jaki wiele osób korzysta z treści wideo, zmienił się drastycznie w ciągu ostatnich 10-15 lat, najpierw w przypadku cyfrowych rejestratorów wideo, a teraz w przypadku przesyłania strumieniowego. Dzisiejsi nastolatkowie dorastają otoczeni podłączonymi urządzeniami i oczekują od telewizora jeszcze więcej niż milenialsi.
Ostatecznym celem każdej platformy smart TV, która jak dotąd okazała się nieuchwytna, jest stworzenie nowego doświadczenia użytkownika, łączącego tradycyjną telewizję z wideo na żądanie i innymi rodzajami treści, tak płynnie, jak to możliwe. Osobiście nie sądzę, żeby ktokolwiek do tej pory zrobił to dobrze. Google mógłby, ale to się okaże. Wiele będzie zależeć od zewnętrznych programistów. Będą musieli przestrzegać szeregu wytycznych, aby zapewnić dobry UX na wszystkich typach sprzętu Android TV, od kluczy HDMI o wartości 50 USD po wysokiej klasy telewizory o wartości 5000 USD.
Ponieważ nie jestem fanem obecnych platform smart TV, wymienianie tego, co należy zrobić, aby stworzyć doskonałe wrażenia użytkownika, może być co najmniej zarozumiałe. Mimo to eksperci od UI i UX zwykle są zgodni w kilku punktach:
- Smart TV to wciąż tylko telewizory – służą przede wszystkim do oglądania treści wideo, a nie do robienia miliona różnych rzeczy, które już robimy na naszych telefonach komórkowych i tabletach.
- Metody wprowadzania muszą się poprawić – piloty ewoluowały, ale wciąż nie są wystarczająco dobre dla złożonego interfejsu użytkownika. Używanie smartfonów i tabletów jako alternatywnych metod wprowadzania danych jest nadal uważane za geeka i musi być prostsze.
- Kontrola gestów – może być zaimplementowana w niektórych sytuacjach, ale ponieważ mamy do czynienia z pasywnym doświadczeniem użytkownika, niewiele się to zmieni.
- Wielu użytkowników – telewizory nie są urządzeniami osobistymi w większości gospodarstw domowych, więc zapomnij o logowaniu, to po prostu zdenerwuje użytkowników.
- Jeśli nie jest zepsuty, nie naprawiaj go – tradycyjne radio i telewizja nadal zapewniają bardzo przyjemne wrażenia użytkownika dzięki swojej prostocie i wygodzie, więc nie ma potrzeby wymyślania koła na nowo.
- Utrzymuj wszystko w prostocie – staraj się ograniczyć interakcję z użytkownikiem do absolutnego minimum za pomocą jak najmniejszej liczby kliknięć.
- Postaw na przejrzysty, minimalistyczny interfejs użytkownika – tylko dlatego, że masz dużo nieruchomości do zabawy, nie musisz ich wszystkich używać.
Ostatecznie programiści Android TV mogą zrobić tylko tyle; Partnerzy Google i Android TV muszą stworzyć doskonałe wrażenia użytkownika. Zewnętrzni programiści będą po prostu na nim budować, rozszerzać funkcjonalność, zapewniając jednocześnie spójne wrażenia na wielu urządzeniach. Jeśli podstawowa platforma cierpi z powodu problemów z ząbkowaniem lub niespójności, programiści muszą wykonywać swoją magię z rękami związanymi za plecami.