Salve, amici, e bentornati.
In questo video, creeremo una nuova applicazione che utilizza i servizi Android per riprodurre musica in background.
Aprite Android studio, create un nuovo progetto, selezionate l'attività Empty Views e chiamatela
applicazione Music Player.
Copio l'immagine di sfondo e la incollo nella cartella drawable.
Assicuratevi che inizi con lettere minuscole e senza numeri.
E questo è il mio background per l'applicazione.
Passiamo all'attività principale e iniziamo a creare lo sfondo del layout disegnabile.
Rimuoviamo questa vista di testo e creiamo due pulsanti.
Il primo per suonare e riprodurre la musica, che è l'avvio del servizio, e il secondo pulsante per fermare il
servizio e interrompere a sua volta la riproduzione della musica.
Contenuto dell'involucro.
Wrap Content ID.
Desumere i vincoli.
Ed eccoci qui.
Trascinarlo e rilasciarlo in ulteriori vincoli.
E creerò una nuova vista di testo solo per creare un titolo per questa applicazione.
Questo è il nostro layout per questa applicazione.
Una vista di testo e due pulsanti.
Passiamo all'attività principale e inizializziamo questi widget.
Creiamo i nostri servizi.
Il primo passo per la creazione del servizio è la creazione di una classe, una classe di servizio personalizzata,
che sarà creata nella stessa cartella in cui risiede la classe principale dell'attività;
questa classe estenderà la classe di servizio e la chiamerò servizio personalizzato.
Estenderà la classe di servizio dell'applicazione Android.
I metodi di callback sono utilizzati per avviare e distruggere i servizi, quindi alt+ enter per implementare
il metodo di callback, che in questo caso è il metodo unbind per riprodurre la musica.
Viene utilizzato l'oggetto media player, quindi creerò un oggetto media player.
Lettore multimediale privato.
Lo chiamo player alt più enter per importare la classe media player.
La classe media player di Android viene utilizzata per riprodurre file audio e video.
Fornisce un'interfaccia di alto livello per controllare la riproduzione, posare, fermare, cercare e gestire altri aspetti della
riproduzione multimediale.
Supporta una varietà di formati audio e video e può essere utilizzato per riprodurre contenuti multimediali da varie fonti, tra
cui file locali, flussi di rete e altro ancora.
Nella lezione precedente abbiamo detto che l'esecuzione del servizio si avvia quando si richiama il comando on start.
Quindi il metodo di comando all'avvio è implementato e posso creare il metodo Oncreate.
Ma qui utilizzerò direttamente il comando on start.
Questo si avvierà alla chiamata di questo metodo, quindi l'esecuzione del servizio si avvierà alla chiamata di questo metodo.
Ecco la logica che devo eseguire in background.
Quindi, al comando di avvio, inizierò a creare un lettore multimediale che riprodurrà l'audio della suoneria predefinita del
dispositivo Android.
Quindi il lettore è uguale al lettore multimediale.
Lo inizializzo media player dot create e qui devo passare due parametri il contesto per questo
e la fonte del file multimediale che devo riprodurre o le impostazioni dot system dot o la notifica o l'avviso di allarme, la
modalità di luminosità dello schermo e altre cose.
Ho bisogno di utilizzare nuovamente l'URL della suoneria predefinita, sto creando un lettore multimediale per riprodurre la suoneria predefinita
nel dispositivo.
Poi devo fare il loop dell'audio per questo.
Utilizzerò player dot set loop su true e per avviare il processo di riproduzione dovrò utilizzare il metodo
player dot start.
Questa operazione avvia o riprende la riproduzione della musica.
E l'ultima cosa che mi serve è una dichiarazione di ritorno mancante e il tipo di ritorno di cui ho
bisogno è una variabile di tipo int.
Ma in questo caso non sto usando variabili intere, posso usare non appiccicoso, appiccicoso,
compatibilità appiccicosa, flag retry e altri.
Pertanto, il metodo di comando di avvio del servizio viene utilizzato per gestire le richieste di avvio in arrivo.
Restituisce un numero intero che specifica come il sistema deve gestire il servizio dopo che è stato avviato.
È possibile utilizzare diversi tipi di ritorno, tra cui start sticky se si restituisce uno start sticky dal
metodo di comando start.
Indica che il servizio deve essere riavviato se viene terminato dal sistema dopo essere stato
avviato; il sistema ricreerà il servizio con un intento nullo e sarà necessario gestire la reinizializzazione
delle risorse necessarie.
Usare questo tipo di ritorno se il servizio esegue attività periodiche come la sincronizzazione dei dati in background
e si vuole garantire che il servizio riprenda a funzionare dopo essere stato temporaneamente ucciso.