WEBVTT

00:00.110 --> 00:03.450
L'altro tipo è l'avvio non appiccicoso.

00:03.470 --> 00:10.430
Se viene restituito Avvio non appiccicoso, indica che il servizio non deve essere riavviato dal sistema dopo

00:10.430 --> 00:12.290
essere stato terminato.

00:12.290 --> 00:19.670
Questo servizio rimarrà fermo a meno che non venga riavviato esplicitamente dall'applicazione o dal componente.

00:19.670 --> 00:27.140
Questo tipo di ritorno è adatto ai servizi che eseguono compiti specifici e non hanno bisogno di essere eseguiti continuamente.

00:27.140 --> 00:34.460
Ad esempio, un servizio che riproduce un effetto sonoro quando viene ricevuta una notifica potrebbe utilizzare questa opzione.

00:34.460 --> 00:42.320
E ci sono molte altre modalità, come l'avvio dell'intento di riconsegna, la compatibilità con gli adesivi e altre ancora.

00:42.320 --> 00:47.540
Ma i due tipi principali sono l'inizio non appiccicoso e l'inizio appiccicoso.

00:47.540 --> 00:48.860
Userò l'adesivo di avvio.

00:48.860 --> 00:54.620
Ora è necessario sovrascrivere un altro metodo di callback chiamato Ondestroy.

00:54.620 --> 00:59.510
L'esecuzione del servizio si interrompe quando si chiama questo metodo.

00:59.510 --> 01:00.780
L'Ondestroy.

01:00.810 --> 01:02.610
Devo interrompere il processo.

01:02.610 --> 01:06.000
Quindi il giocatore si ferma al punto.

01:06.000 --> 01:08.550
Devo fermare la musica in Android.

01:08.550 --> 01:16.650
Il metodo unbind fa parte della classe del servizio e viene utilizzato specificamente nel contesto dei servizi vincolati.

01:16.680 --> 01:22.740
Un servizio vincolato è un tipo di servizio che consente ad altri componenti, di solito attività,

01:22.740 --> 01:28.050
di legarsi ad esso e di interagire con esso ottenendo un'interfaccia I binder.

01:28.050 --> 01:35.250
E l'interfaccia I binder viene utilizzata per stabilire un canale di comunicazione tra i componenti

01:35.250 --> 01:37.980
e il servizio se si restituisce null.

01:37.980 --> 01:44.790
E questa è l'implementazione predefinita, che indica che il servizio non supporta il binding e quindi

01:44.790 --> 01:46.800
non può essere vincolato.

01:46.830 --> 01:52.200
In questo esempio, non vincolerò alcuna attività a questo servizio.

01:52.230 --> 01:59.490
Abbiamo creato la mia classe di servizio personalizzata e dobbiamo avviare la musica ed eseguire l'operazione per avviare questo

01:59.490 --> 02:00.480
servizio.

02:00.480 --> 02:07.530
Andrò sul pulsante di avvio dell'attività principale, selezionerò Click Listener, Nuova vista e farò clic su Listener.

02:07.530 --> 02:14.310
E devo passare qui la logica che ci consente di avviare il servizio personalizzato.

02:14.310 --> 02:18.720
Chiamerò un metodo chiamato Avvia servizio.

02:18.720 --> 02:23.370
Il metodo start service viene utilizzato per avviare l'esecuzione di un servizio.

02:23.400 --> 02:31.230
È un modo per avviare un servizio indipendentemente da altri componenti e consente al servizio di eseguire attività o operazioni

02:31.230 --> 02:37.920
in background, anche se il componente di inizializzazione viene messo in pausa o distrutto.

02:37.920 --> 02:43.140
Il metodo start service viene utilizzato per avviare un servizio non vincolato.

02:43.140 --> 02:51.180
Per avviare il servizio, si chiama il metodo start service, passando un intent che specifica quale servizio si vuole avviare, il che

02:51.180 --> 02:58.800
avviene tipicamente dall'interno di un'attività, di un ricevitore broadcast o di un altro componente dell'applicazione.

02:58.800 --> 03:02.280
Per questo è necessario creare un oggetto intent.

03:02.310 --> 03:05.340
Alt+invio per importare il pacchetto di intenti.

03:05.340 --> 03:13.710
Lo chiamo intento di servizio uguale a nuovo intento e devo passare il contesto, ottenere il contesto dell'applicazione come

03:13.710 --> 03:15.090
primo parametro.

03:15.090 --> 03:19.200
Il secondo parametro è la classe del servizio.

03:19.200 --> 03:27.330
La mia classe dot del servizio personalizzato, quando abbiamo creato gli intenti e li abbiamo usati per navigare tra i diversi

03:27.330 --> 03:35.190
componenti e le diverse attività, abbiamo passato il nome dell'attività e abbiamo chiamato il metodo start activity.

03:35.190 --> 03:42.960
Ma qui sto usando un servizio, quindi sto chiamando questo metodo di avvio del servizio e ho bisogno di usare l'intent

03:42.960 --> 03:46.200
per usare il servizio allo stesso modo.

03:46.200 --> 03:55.620
Ho bisogno di usare il pulsante di arresto impostato sull'ascoltatore di clic, voi e l'ascoltatore di clic e creerò o userò un metodo chiamato

03:55.620 --> 04:04.290
stop service allo stesso modo prima di copiare questo intento per usare questo metodo, il mio servizio personalizzato e ho

04:04.290 --> 04:08.370
bisogno di fermare questo intento di servizio.

04:08.370 --> 04:15.390
Salviamo il progetto, eseguiamo l'applicazione e se facciamo clic sui pulsanti, non succede nulla perché non abbiamo

04:15.390 --> 04:23.070
implementato il servizio nel manifest Per implementare i servizi con successo su qualsiasi dispositivo Android, è necessario

04:23.070 --> 04:31.380
menzionare il servizio creato in Androidmanifest. xml perché è un componente.

04:31.410 --> 04:35.280
Dobbiamo menzionarlo all'interno del file manifest.

04:35.280 --> 04:38.820
Qui potete vedere che ho menzionato l'attività.

04:38.820 --> 04:40.940
Abbiamo quindi una sola attività.

04:40.950 --> 04:48.390
La chiuderò facendo clic su questo pulsante qui sotto l'attività e all'interno del tag dell'applicazione,

04:48.390 --> 04:51.210
devo definire il servizio.

04:51.240 --> 04:57.930
Non è possibile che un servizio svolga il suo compito se non è menzionato in questo file; il nome del servizio

04:57.930 --> 04:59.850
è indicato all'interno.

04:59.970 --> 05:01.290
Il tag dell'applicazione.

05:01.290 --> 05:03.540
Quindi userò il servizio.

05:03.540 --> 05:12.210
Qui devo indicare il nome del mio servizio, il mio servizio personalizzato, e userò il tag di chiusura per

05:12.210 --> 05:14.070
il nome del servizio.

05:14.070 --> 05:20.220
Pertanto, è necessario menzionare il servizio come tag nel file manifest di Android.

05:20.220 --> 05:26.970
Eseguiamo di nuovo l'applicazione e questa è la nostra applicazione Facciamo clic su Avvia servizio e possiamo

05:26.970 --> 05:29.010
sentire il suono della suoneria.

05:29.160 --> 05:37.320
Viene riprodotto continuamente e se si fa clic sulla home e si salta l'applicazione, si può vedere che è ancora in esecuzione

05:37.320 --> 05:41.640
ed emette questo suono, riproducendo l'audio.
