WEBVTT

00:00.350 --> 00:02.420
Iniziare con il filtro delle intenzioni.

00:02.420 --> 00:04.460
E all'interno di questo filtro intenzionale.

00:04.460 --> 00:13.580
Devo iniziare con il nome dell'azione Android e qui devo specificare android dot intent dot action

00:13.580 --> 00:15.830
dot airplane mode.

00:15.830 --> 00:24.950
L'elemento intent filter è un elemento di configurazione XML utilizzato in androidmanifest. xml per specificare i tipi di intenti di trasmissione, attività,

00:24.950 --> 00:31.700
servizi e così via a cui un componente, ad esempio un servizio di attività o un ricevitore

00:31.700 --> 00:36.260
di trasmissione, è disposto a rispondere.

00:36.290 --> 00:42.290
Aiuta a definire le condizioni in cui un componente può essere invocato o abbinato.

00:42.290 --> 00:45.260
E questo è l'elemento principale, il filtro dell'intento.

00:45.260 --> 00:52.370
E qui l'azione Action specifica l'azione o l'evento a cui il componente può rispondere.

00:52.370 --> 00:57.110
Ad esempio, Android ha un punto di azione intenzionale e un punto di modalità aereo.

00:57.140 --> 00:58.190
Sto ascoltando.

00:58.190 --> 01:02.250
Sto rispondendo alla configurazione della modalità aereo.

01:02.250 --> 01:04.650
Se si passa il mouse qui si può vedere questo errore.

01:04.650 --> 01:07.260
Ho bisogno di impostare l'esportazione su true.

01:07.260 --> 01:10.350
Si tratta di un tag o attributo molto importante.

01:10.350 --> 01:11.280
Impostarlo su true.

01:11.280 --> 01:18.390
Se si desidera che altre applicazioni inviino trasmissioni a questo ricevitore, eseguire l'applicazione, passare alla modalità

01:18.390 --> 01:20.850
aereo e si può vedere che non succede nulla.

01:20.850 --> 01:24.030
Ciò è dovuto alle ultime versioni di Android.

01:24.030 --> 01:34.320
Quindi, come parte del livello API 33 di Android, le applicazioni che puntano al livello API 26 o superiore non possono più registrare nel loro manifest

01:34.320 --> 01:39.030
i ricevitori di broadcast per le trasmissioni implicite.

01:39.030 --> 01:47.010
Questo modo è quindi adatto per le applicazioni inferiori al livello API 26.

01:47.010 --> 01:50.850
Si può notare che sto puntando al livello API 31.

01:50.850 --> 01:53.550
Questa applicazione funziona per i bambini di età compresa tra i 6 e i 6 anni.

01:53.550 --> 01:55.710
Qual è la soluzione?

01:55.740 --> 02:04.410
La soluzione consiste nell'andare a registrare i ricevitori di trasmissione nell'attività principale di Android.

02:04.410 --> 02:09.750
Quindi è necessario iniziare con la creazione di un filtro di intenti.

02:09.750 --> 02:19.410
Abbiamo parlato del filtro intent e qui sto specificando Android dot intent dot action dot airplane mode.

02:19.410 --> 02:28.770
Quindi devo iniziare con il ricevitore di trasmissione in modalità aereo, il ricevitore di trasmissione B-R è uguale al nuovo ricevitore

02:28.770 --> 02:30.360
di modalità aereo.

02:30.390 --> 02:32.910
Questa è la classe creata in precedenza.

02:32.910 --> 02:40.620
Devo usare il metodo register receiver per registrare R, che è il ricevitore broadcast che abbiamo creato.

02:40.620 --> 02:48.990
Con il filtro intent, questo metodo viene utilizzato per registrare dinamicamente un ricevitore broadcast nel codice dell'applicazione.

02:48.990 --> 02:56.940
Vi ho detto che ci sono due modi per registrare un ricevitore broadcast, staticamente nel manifest di

02:56.940 --> 03:02.820
Android e questo per le applicazioni che puntano alle API 25 e inferiori.

03:02.820 --> 03:07.950
In questo modo, durante il runtime, dobbiamo registrare la trasmissione.

03:07.950 --> 03:10.200
Questo è da 26 in su.

03:10.200 --> 03:16.470
Quindi il livello API è visibile nel manifest di Android e nell'obiettivo API.

03:16.470 --> 03:23.040
Questo è il modo dinamico di registrare un ricevitore broadcast e questo è il modo statico.

03:23.040 --> 03:24.960
Non ne ho più bisogno.

03:25.440 --> 03:26.580
Ed eccoci qui.

03:26.580 --> 03:32.820
Questa è la nostra applicazione che va in modalità aereo e si può notare che questo è un messaggio di toast che

03:32.820 --> 03:39.180
ci dice che è attivo, quindi fate di nuovo clic su di esso e si può vedere che il messaggio di toast è attivo.

03:39.180 --> 03:47.430
Ecco come registrare dinamicamente il ricevitore broadcast in Android e come creare l'applicazione che utilizza

03:47.430 --> 03:49.560
i ricevitori broadcast.
