android-youtube-player, otwarta alternatywa dla oficjalnego interfejsu API odtwarzacza YouTube

krótkie wprowadzenie do interfejsu API odtwarzacza YouTube na Androida i dlaczego warto go używać jako zamiennika oficjalnego interfejsu API odtwarzacza YouTube na Androida

Tworzysz nową aplikację na Androida i chcesz umożliwić użytkownikom oglądanie w niej filmów z YouTube. Pierwszą rzeczą, o której możesz pomyśleć, jest użycie oficjalnego interfejsu API odtwarzacza Android Android. To niekoniecznie najlepszy wybór. W tym poście zamierzam przedstawić alternatywny odtwarzacz YouTube typu open source, który zbudowałem (Android-youtube-player), wyjaśniając niektóre korzyści, które możesz uzyskać, korzystając z niego zamiast oficjalnego odtwarzacza.

Dlaczego warto rozważyć nieużywanie oficjalnej biblioteki z YouTube?

Jeśli martwisz się o stabilność

Na dzień dzisiejszy (25.12.2017) oficjalne API odtwarzacza nie jest świetne. Prawdopodobnie wszystko będzie dobrze, jeśli będziesz potrzebować
YouTubeBaseActivity / YouTubeStandalonePlayer, ale będziesz mieć problemy z YouTubePlayerFragment.

Biblioteka ma kilka bardzo starych błędów, ten jest najbardziej znaczący, z jakim się spotkałem. Podczas opracowywania aplikacji ciągle się w nią pojawiałam, widząc, że moja aplikacja losowo ulega awarii bez widocznego powodu. To spowodowało, że moja aplikacja była niestabilna i nigdy nie była gotowa do produkcji.
O ile mi wiadomo, błąd jest nadal obecny. Nowa wersja biblioteki powinna być w przygotowaniu, ale nie została jeszcze wydana.

Jeśli nie chcesz być związany z Google Play i aplikacją YouTube

Aby uruchomić, oficjalny interfejs API odtwarzacza wymaga urządzenia użytkownika, aby mieć zarówno Google Play, jak i aplikację YouTube.

Jest to ograniczenie, którego nie ma interfejs API odtwarzacza YouTube na Androida.

Jeśli chcesz mieć większą kontrolę nad wyglądem i zachowaniem gracza

Oficjalny interfejs API odtwarzacza nie jest oprogramowaniem typu open source, dlatego dostosowywanie, które można wykonać, idzie w miarę możliwości interfejsu API. Niestety oznacza to: niezbyt daleko.

Może chcesz zmienić interfejs użytkownika odtwarzacza lub napisać niestandardowe zachowanie właściwe dla danego przypadku użycia. Nie jest to możliwe w przypadku oficjalnego gracza.

Jeśli nie chcesz rejestrować swojej aplikacji w Google Developers Console

… To trochę leniwe, ale interfejs API odtwarzacza YouTube na Androida nie wymaga tego.

Między tymi wszystkimi największymi obawami miałem stabilność biblioteki. Pewnego dnia Google prawdopodobnie wyda nową wersję, która rozwiązuje problem, ale to się jeszcze nie wydarzyło (od 2013: |). Jeśli, podobnie jak ja, musisz opublikować swoją aplikację, prawdopodobnie potrzebujesz bardziej natychmiastowego rozwiązania.

Alternatywa: Android-youtube-player API

Interfejs API Androida-youtube-player zapewnia prosty widok, który można łatwo zintegrować z każdym działaniem i fragmentem.

Pod maską biblioteka współdziała z YouTube za pośrednictwem interfejsu API IFrame Player, który działa w WebView.

Jeśli chcesz korzystać z internetowego interfejsu użytkownika odtwarzacza internetowego, możesz to zrobić. Ale możesz także użyć konfigurowalnego natywnego interfejsu użytkownika dostarczonego przez bibliotekę. Możesz nawet zbudować własny interfejs użytkownika od podstaw.

Ponieważ interfejs API korzysta z oficjalnego interfejsu API odtwarzacza IFrame w celu uzyskania dostępu do YouTube, nie występują problemy z naruszeniem warunków świadczenia usług.

Łatwość użycia

Android-youtube-player nie wymaga od swoich użytkowników rozszerzania irytujących działań lub fragmentów, to tylko widok. Możesz upuścić go gdziekolwiek chcesz.

Konfigurowalny interfejs użytkownika

Android-youtube-player daje dużą swobodę w zakresie dostosowywania interfejsu użytkownika. Jeśli chcesz, możesz całkowicie zastąpić interfejs użytkownika odtwarzacza własnym.

Lub możesz łatwo dodawać / usuwać Widoki z domyślnego interfejsu użytkownika.

Obsługa Chromecasta

Począwszy od wersji 8 interfejs API Android-youtube-player może być również używany do przesyłania filmów z aplikacji na Androida na urządzenie Google Cast.

Szybki start - użyj biblioteki z zaledwie kilkoma liniami kodu

Pokażę teraz prosty przykład, jak rozpocząć pracę z biblioteką, używając tylko kilku wierszy kodu.

Kod źródłowy kilku innych przykładów jest dostępny tutaj, w przykładowej aplikacji. Możesz także pobrać przykładową aplikację apk i wypróbować ją na telefonie.

Pierwsze kroki

Aby użyć interfejsu API, zacznij od zaimportowania zależności biblioteki, dodając ten wiersz do build.gradle na poziomie modułu.

(zamień „ostatnia wersja” na rzeczywisty numer ostatniej wersji biblioteki. Wydane wersje można znaleźć tutaj)

Aby rozpocząć korzystanie z odtwarzacza, musisz dodać YouTubePlayerView do swojego układu. Możesz także utworzyć programowo, jeśli wolisz.

W swojej aktywności / fragmencie uzyskaj odniesienie do YouTubePlayerView w swoim kodzie i dodaj go jako obserwatora cyklu życia jego rodzica.

Musisz używać systemu Androidx zamiast starych bibliotek obsługi, w przeciwnym razie na tym etapie mogą wystąpić problemy ze zgodnością.

To wszystko, czego potrzebujesz, aby rozpocząć odtwarzanie filmów z YouTube w swojej aplikacji.

Jeśli chcesz mieć większą kontrolę, wszystko można zrobić programowo, uzyskując odniesienie do YouTubePlayerView i dodając do niego YouTubePlayerListener.

Nie ma prostszego sposobu na odtwarzanie filmów z YouTube'a na Androidzie.

Następne kroki

  1. Odwiedź stronę główną projektu.
  2. Przeczytaj dokumentację API.
  3. Zostaw gwiazdkę na GitHub :)

Gdzie mnie znajdziesz?

Śledź mnie na Twitterze: https://twitter.com/psoffritti
Moja strona / portfolio: pierfrancescosoffritti.com
Moje konto GitHub: https://github.com/PierfrancescoSoffritti
Moje konto LinkedIn: linkedin.com/in/pierfrancescosoffritti/en