Broadcast: Comunicare tra Activity Service

Broadcast: Comunicare tra Activity Service

Broadcast

Quando si crea un Service, spesso si vorrebbe comunicare con esso, mandando dati o opzioni che cambiano nel tempo. Uno dei modi per inviare dati semplici (parliamo di tipi rudimentali + stringhe e array) è quello di utilizzare il Local Broadcast Manager e il Broadcast Receiver. Vediamo subito con due snippet come funzionano! Con Local Broadcast Manager si inviano dati al sistema android. Con Broadcast Receiver si ricevono i dati dal sistema android. Ecco un esempio di invio:

invio con local broadcast manager
Invio con LocalBroadcastManager

e ricezione:

ricezione con broadcast receiver
Ricezione con BroadcastReceiver

Spiegazione breve: BUS_ID è appunto l’identificativo del nostro “bus”, del canale che ci fa trasmettere dati. Deve essere uguale per chi invia e chi riceve, ma puo’ essere qualsiasi stringa. Badate bene che è buona pratica usare una nomenclatura simile al package. “chiave” è proprio la chiave, come in un hashmap, con cui prendiamo il “valore”. Puo’ essere qualsiasi stringa, sempre ovviamente che sia la stessa per mittente e destinatario.

Penso di aver spiegato le cose forse piu’ “strane” 😛

Il codice qui sopra lo potete trovare anche QUI Per domande / chiarimenti non esitate a chiedere qui sotto nei commenti!

Seguiteci anche su FacebookGoogle PlusTumblr e Twitter, per restare sempre in contatto con noi e con le nostre guide.

Broadcast: Comunicare tra Activity Service ultima modifica: 2014-08-08T21:35:09+00:00 da Benedetto Nespoli