Autore Topic: Come posso creare un Thread che restituisce dei risultati a più activity?  (Letto 607 volte)

Offline Debby

  • Nuovo arrivato
  • *
  • Post: 5
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Lenovo Yoga 10
  • Sistema operativo:
    Android 4.4.2
Ciao a tutti,

ho bisogno di un aiuto! Sto sviluppando un'app composta da due activity dove la prima activity avvia la seconda. Ho bisogno di eseguire un thread nella seconda activity, che legge dei dati da un server e li visualizza sia nella prima activity e sia nella seconda. Nello specifico, se ho una situazione in cui durante l'esecuzione del thread premo il tasto back per tornare sulla prima activity il thread deve continuare lo stesso la sua esecuzione senza sospendersi o bloccarsi e restituirmi i risultati in tempo reale che posso visualizzare in entrambe le activity.

Avete qualche suggerimento da darmi? Grazie in anticipo.

Offline tonno16

  • Utente storico
  • *****
  • Post: 1187
  • Respect: +57
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Come posso creare un Thread che restituisce dei risultati a più activity?
« Risposta #1 il: 05 Marzo 2016, 23:24:09 CET »
0
USA un service avviato dalla prima activity.

Offline undead

  • Utente senior
  • ****
  • Post: 666
  • Respect: +113
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S6
  • Play Store ID:
    DrKappa
  • Sistema operativo:
    Windows 10 64-bit, Windows 8.1 64-bit
Re:Come posso creare un Thread che restituisce dei risultati a più activity?
« Risposta #2 il: 06 Marzo 2016, 09:43:29 CET »
0
Tonno ha ragione ma se i dati della Activity A sono slegati dai dati della Activity B va bene, se sono in qualche modo collegati secondo me hai bisogno di un "punto di raccolta" unico.

A quel punto può avere senso tenere una activity e usare 2 fragment.

Offline Debby

  • Nuovo arrivato
  • *
  • Post: 5
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Lenovo Yoga 10
  • Sistema operativo:
    Android 4.4.2
Re:Come posso creare un Thread che restituisce dei risultati a più activity?
« Risposta #3 il: 06 Marzo 2016, 10:36:15 CET »
0
Il thread viene avviato esclusivamente nella seconda activity per poi visualizzare i risultati in tempo reale nella prima e nella seconda activity. Se invece avvio un service dalla seconda activity ha senso?

Offline undead

  • Utente senior
  • ****
  • Post: 666
  • Respect: +113
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S6
  • Play Store ID:
    DrKappa
  • Sistema operativo:
    Windows 10 64-bit, Windows 8.1 64-bit
Re:Come posso creare un Thread che restituisce dei risultati a più activity?
« Risposta #4 il: 06 Marzo 2016, 15:42:38 CET »
0
Puoi usare un bound service, quando la activity A parte fai un bind e implementi una interface sulla activity A così che il service possa comunicare. Altrimenti se è la activity a dover parlare col service non hai bisogno di interface.  :-)

Offline iClaude

  • Utente normale
  • ***
  • Post: 183
  • Respect: +13
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S5
  • Sistema operativo:
    Windows 10
Re:Come posso creare un Thread che restituisce dei risultati a più activity?
« Risposta #5 il: 07 Marzo 2016, 10:53:30 CET »
0
Un'altra soluzione potrebbe essere registrare un BroadcastReceiver nella prima Activity; poi il thread comunicherà il risultato inviando un broadcast.

Offline Debby

  • Nuovo arrivato
  • *
  • Post: 5
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Lenovo Yoga 10
  • Sistema operativo:
    Android 4.4.2
Re:Come posso creare un Thread che restituisce dei risultati a più activity?
« Risposta #6 il: 08 Marzo 2016, 17:39:28 CET »
0
Scusate ma non sono molto esperta di Android  :'(  potete farmi qualche esempio?