Android: cos'è Sticky Broadcast?

Una trasmissione permanente è uno strumento utilizzato dagli sviluppatori Android per comunicare tra le app. Queste trasmissioni avvengono senza che l'utente venga informato. Il sistema operativo Android normalmente tratta ogni applicazione come se fosse un utente separato. Le app vengono eseguite in modo indipendente e isolato, su macchine virtuali separate, utilizzando solo i componenti hardware di cui hanno bisogno per funzionare. Ciò porta a una stretta sicurezza, ma a volte le app devono condividere informazioni, le trasmissioni permanenti sono una soluzione per ottenere informazioni da un'app all'altra.

Trasmissioni

Le trasmissioni sono annunci inviati alle app Android. Questi accadono senza che l'utente ne sia consapevole. Il sistema operativo Android avvia la maggior parte delle trasmissioni, ma anche le singole app possono trasmettere. Ad esempio, quando la batteria si scarica o lo schermo si spegne, viene emesso un annuncio a tutte le applicazioni. Se un'app riceve dati disponibili per altre applicazioni, le informerà. Affinché l'annuncio raggiunga le app, deve prima andare a un ricevitore di trasmissione, un componente nell'app che gestisce i messaggi di trasmissione.

Video del giorno

Intenti Android

A causa della separazione che Android impone tra le sue varie app, tutte le trasmissioni passano attraverso il sistema operativo. Un'app non può contattare direttamente il ricevitore di trasmissione di un'altra app. Quando un'app desidera inviare una trasmissione, notifica al sistema operativo un intento. Un intento è un messaggio per attivare un'app o attivare uno dei suoi componenti, come il destinatario. L'intento definisce semplicemente il messaggio che sta per essere trasmesso, ad esempio che la batteria è scarica o per richiedere l'accesso a una fotografia sul telefono.

Trasmissioni persistenti

Una normale trasmissione raggiunge il ricevitore a cui è destinata, quindi termina. Una trasmissione permanente rimane attaccata in modo che possa notificare ad altre app se hanno bisogno delle stesse informazioni, ad esempio che la batteria è ora completamente carica. Quando registri una nuova app che deve conoscere le informazioni o quando viene avviata un'app inattiva, la trasmissione permanente verrà inviata al ricevitore della nuova app. Una nuova trasmissione permanente con informazioni aggiornate sullo stesso argomento riscriverà una trasmissione permanente precedente.

Considerazioni

Un'app può inviare una trasmissione permanente o rimuoverne una solo se la sua programmazione include un'autorizzazione che autorizza gli sticky. La sicurezza sulle trasmissioni permanenti non è così rigida come sui messaggi non permanenti. Qualsiasi app può potenzialmente sovrascrivere lo sticky di un'altra app. Uno degli aspetti positivi dell'utilizzo di un intento, appiccicoso o meno, è che mentre puoi specificare quali app desideri riceverlo, non è necessario. Il tuo Android determina le app giuste per ricevere la tua trasmissione, in base al filtro integrato in ciascuna app dal suo programmatore.