android-youtube-player, un'alternativa open source all'API YouTube Player ufficiale

una breve introduzione all'API android-youtube-player e perché potresti voler usarla come sostituto dell'API YouTube Player Android ufficiale

Stai costruendo la tua nuova app Android e vuoi consentire ai tuoi utenti di guardare i video di YouTube in essa. La prima cosa che potresti pensare è usare l'API YouTube Player Android ufficiale. Questa non è necessariamente la scelta migliore. Con questo post introdurrò un lettore YouTube open source alternativo che ho creato (lettore android-youtube), spiegando alcuni dei vantaggi che potresti ottenere usandolo al posto del lettore ufficiale.

Perché dovresti considerare di non utilizzare la biblioteca ufficiale di YouTube?

Se sei preoccupato per la stabilità

Ad oggi (25/12/2017) l'API Player ufficiale non è eccezionale. Probabilmente starai bene se devi usare il
YouTubeBaseActivity / YouTubeStandalonePlayer, ma riscontrerai problemi con YouTubePlayerFragment.

La libreria ha alcuni bug molto vecchi, questo è il più significativo che abbia mai incontrato. Durante lo sviluppo della mia app ho continuato a trovarci, vedendo la mia app bloccarsi casualmente per apparentemente senza motivo. Ha reso la mia app instabile e mai pronta per la produzione.
Il bug è ancora lì, per quanto ne so. Una nuova versione della libreria dovrebbe essere in preparazione, ma non è ancora stata rilasciata.

Se non vuoi essere legato a Google Play e all'app YouTube

Per funzionare, l'API Player ufficiale richiede che sul dispositivo dell'utente sia installata Google Play e l'app YouTube.

Questa è una limitazione che l'API di Android-YouTube-player non ha.

Se vuoi un maggiore controllo sull'aspetto e sul comportamento del giocatore

L'API Player ufficiale non è open source, quindi la personalizzazione che puoi fare arriva fino a che l'API lo consenta. Purtroppo questo significa: non molto lontano.

Forse vuoi cambiare l'interfaccia utente del player o scrivere un comportamento personalizzato specifico per il tuo caso d'uso. Questo non è possibile con il giocatore ufficiale.

Se non desideri registrare la tua app nella Google Developers Console

... È un po 'pigro, ma l'API Android Player per YouTube non ti richiede di farlo.

Tra tutte queste, la più grande preoccupazione che ho avuto è stata la stabilità della biblioteca. Un giorno Google probabilmente rilascerà una nuova versione, risolvendo il problema, ma questo deve ancora accadere (dal 2013: |). Se, come me, devi rilasciare la tua app, probabilmente hai bisogno di una soluzione più immediata.

L'alternativa: API android-youtube-player

L'API android-youtube-player fornisce una vista semplice che può essere facilmente integrata in ogni attività e frammento.

La libreria interagisce con YouTube tramite l'API IFrame Player, che viene eseguita in un WebView.

Se si desidera utilizzare l'interfaccia utente Web del lettore Web, è possibile farlo. Ma puoi anche usare l'interfaccia utente nativa personalizzabile fornita dalla libreria. Puoi persino creare la tua UI personalizzata da zero.

Poiché l'API utilizza l'API IFrame Player ufficiale per accedere a YouTube, non vi sono problemi con le violazioni dei termini di servizio.

Facilità d'uso

android-youtube-player non richiede ai suoi utenti di estendere attività o frammenti fastidiosi, è solo una vista. Puoi lasciarlo dove vuoi.

UI personalizzabile

android-youtube-player offre molta libertà in termini di personalizzazione dell'interfaccia utente. Se lo desideri, puoi sostituire completamente l'interfaccia utente del giocatore con la tua.

Oppure puoi aggiungere / rimuovere facilmente viste dall'interfaccia utente predefinita.

Supporto per Chromecast

A partire dalla versione 8 l'API android-youtube-player può essere utilizzata anche per trasmettere video da un'app Android a un dispositivo Google Cast.

Avvio rapido: utilizzare la libreria con poche righe di codice

Ora mostrerò un semplice esempio di come iniziare a utilizzare la libreria, con solo poche righe di codice.

Il codice sorgente di alcuni altri esempi è disponibile qui, nell'app di esempio. Puoi anche scaricare l'apk dell'app di esempio e provarlo sul tuo telefono.

Primi passi

Per utilizzare l'API start importando la dipendenza della libreria, aggiungendo questa riga al build.gradle a livello di modulo.

(sostituisci "last_version" con il numero dell'ultima versione effettiva della libreria. Le versioni rilasciate sono disponibili qui)

Per iniziare a utilizzare il lettore è necessario aggiungere aYouTubePlayerView al layout. Puoi anche crearlo a livello di programmazione, se preferisci.

Nella tua attività / frammento, fai riferimento a YouTubePlayerView nel tuo codice e aggiungilo come osservatore del ciclo di vita dei suoi genitori.

Devi utilizzare androidx invece delle vecchie librerie di supporto, altrimenti potresti riscontrare problemi di compatibilità in questo passaggio.

Tutto ciò di cui hai bisogno per iniziare a riprodurre video di YouTube nella tua app.

Se vuoi un maggiore controllo, tutto può essere fatto a livello di codice ottenendo un riferimento a YouTubePlayerView e aggiungendo un YouTubePlayerListener ad esso.

Non esiste un modo più semplice per riprodurre video di YouTube su Android.

Prossimi passi

  1. Visita la home page del progetto.
  2. Leggi la documentazione dell'API.
  3. Lascia una stella su GitHub :)

Dove mi puoi trovare?

Seguimi su Twitter: https://twitter.com/psoffritti
Il mio sito Web / portfolio: pierfrancescosoffritti.com
Il mio account GitHub: https://github.com/PierfrancescoSoffritti
Il mio account LinkedIn: linkedin.com/in/pierfrancescosoffritti/en