Autore Topic: Salvataggio stato activity  (Letto 1049 volte)

Offline mimmog

  • Utente senior
  • ****
  • Post: 731
  • Respect: +11
    • MisterX_Dev
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Note e Galaxy Nexus
  • Play Store ID:
    MisterX_Dev
  • Sistema operativo:
    Windows 7
Salvataggio stato activity
« il: 06 Maggio 2011, 07:33:41 CEST »
0
Ho due activity che prendendono dei dati dal web e poi li visualizzano rispettivamente in una listview ed un layout normale,il problema é  che quando giro lo schermo viene ripetuto il prelievo dei dati via web probabilmente perché l'activuty si riavvia. So che esistono i metodi SaveIstanceState e RestoreIstanceState solo che non ho capito cosa devo salvare per non farla riavviare...una variabile che mi dica che i dati sono già stati caricati? Oltrrtutto quando ruoto lo schermo mentre sta prelevando i dati dal web (tramite un apposito thread)  e nel frattempo viene visualizzata una Progressdialog indeterminate, mi da errore dell'applicazione e me la chiude :(

Sent from my GT-I9000 using Tapatalk

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:Salvataggio stato activity
« Risposta #1 il: 06 Maggio 2011, 08:12:26 CEST »
0
Quando ruoti lo schermo l'activity viene distrutta e ricreata, per quasi tutto la distruzione e la nuova creazione va benissimo, talvolta (esempio thread che stanno lavorando) potresti volerli trasportare nella nuova activity ed è in quel caso che entrano in gioco i metodi di cui parli.

Comunque sul forum c'è diverso materiale in proposito, cerca un po'.
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline mimmog

  • Utente senior
  • ****
  • Post: 731
  • Respect: +11
    • MisterX_Dev
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Note e Galaxy Nexus
  • Play Store ID:
    MisterX_Dev
  • Sistema operativo:
    Windows 7
Re:Salvataggio stato activity
« Risposta #2 il: 06 Maggio 2011, 12:42:48 CEST »
0
mmm non mi sembra ci sia nulla per quanto riguarda il salvataggio di un thread...

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:Salvataggio stato activity
« Risposta #3 il: 06 Maggio 2011, 13:50:05 CEST »
0
mmm non mi sembra ci sia nulla per quanto riguarda il salvataggio di un thread...

C'è uno snippet intitolato quasi come il tuo thread.

Salvataggio dello stato tra più Activity (aka variabili globali in Android) - Android Developers Italia
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3487
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:Salvataggio stato activity
« Risposta #4 il: 06 Maggio 2011, 13:51:58 CEST »
0
E c'è anche il tutorial su come evitare che l'activity venga riavviata (cosa migliore).

Offline mimmog

  • Utente senior
  • ****
  • Post: 731
  • Respect: +11
    • MisterX_Dev
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Note e Galaxy Nexus
  • Play Store ID:
    MisterX_Dev
  • Sistema operativo:
    Windows 7
Re:Salvataggio stato activity
« Risposta #5 il: 06 Maggio 2011, 14:56:03 CEST »
0
Si quello lo conosco però parla di variavili globali io volevo proprio capire il thread come lo continuo quando un'activity viene riavviata così che non rifaccia il lavoro già svolto e poi che non vada in errore

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3487
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:Salvataggio stato activity
« Risposta #6 il: 06 Maggio 2011, 14:59:29 CEST »
0
Per questo tipo di necessità sarebbe meglio usassi un Service, un Thread non è adatto :)

PS: Sarebbe molto più semplice non far riavviare l'activity quando ruoti lo schermo.

Offline Nicola_D

  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline mimmog

  • Utente senior
  • ****
  • Post: 731
  • Respect: +11
    • MisterX_Dev
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Note e Galaxy Nexus
  • Play Store ID:
    MisterX_Dev
  • Sistema operativo:
    Windows 7
Re: Re:Salvataggio stato activity
« Risposta #8 il: 06 Maggio 2011, 20:50:06 CEST »
0
e c'è pure questo: [facile] Mantenere un ProgressDialog dopo la rotazione del dispositivo - Android Developers Italia
Bhe questo già risolve il problema del crash...quindi resta quello di non far riavviare l'activity,onestamente creare un service per fare il parser delle pagine web mi sembra sprecato, il thread è  più che adatto però  mi sa che il suo stato non si può  salvare,un'idea per risolvere era quella di salvare una variabile nel saveistancestate così nel restore posso vedere se é  valorizzata gli faccio saltare il prezzo di codice che si occupa del prelievo dei dati via web,altrimenti anche la questione del non riavvio dell'activiy é  buono ma non trovo il topoic che ne parla,dov'é ??

Sent from my GT-I9000 using Tapatalk