Autore Topic: Rimuovere dati all'avvio dell'applicazione  (Letto 466 volte)

Offline davix10

  • Utente normale
  • ***
  • Post: 159
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Lg G4
  • Play Store ID:
    davix10
  • Sistema operativo:
    Windows 10
Rimuovere dati all'avvio dell'applicazione
« il: 15 Ottobre 2014, 11:34:53 CEST »
0
Ciao, sto utilizzando la funzione SharedPreferences per salvare i dati della mia activity secondaria, in modo di avere gli stessi valori quando la richiamo. Mi piacerebbe eliminare i dati ad ogni avvio della mia app, è possibile? Non riesco a trovare una soluzione...
Grazie

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:Rimuovere dati all'avvio dell'applicazione
« Risposta #1 il: 15 Ottobre 2014, 12:18:03 CEST »
0
Mi piacerebbe eliminare i dati ad ogni avvio della mia app, è possibile? Non riesco a trovare una soluzione...

Le SharedPreferences servono esplicitamente per mantenere i dati ad ogni avvio.

Se non ti serve questa caratteristica, basta non usare le SharedPreferences. Se vuoi far persistere i dati tra le activity usa Singleton, estendi Application (che alla fine è un singleton), oppure passa i dati con gli Intent
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline davix10

  • Utente normale
  • ***
  • Post: 159
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Lg G4
  • Play Store ID:
    davix10
  • Sistema operativo:
    Windows 10
Re:Rimuovere dati all'avvio dell'applicazione
« Risposta #2 il: 15 Ottobre 2014, 13:19:20 CEST »
0
Però con gli intent ogni volta che accedo a quella schermataschermata ho di nuovo i valori di default.

Offline Sakazaki

  • Utente normale
  • ***
  • Post: 396
  • Respect: +74
    • Mostra profilo
  • Dispositivo Android:
    Sony xperia Z
  • Play Store ID:
    Saka Labs
  • Sistema operativo:
    Windows 8
Re:Rimuovere dati all'avvio dell'applicazione
« Risposta #3 il: 15 Ottobre 2014, 16:00:30 CEST »
0
Se proprio non vuoi fare a meno delle SharedPreferences (anche se è un uso un po' strano quello che ne fai) nota che così come l'editor ha i vari putXxx(String key, ...) ha anche un comodo metodo clear() per svuotare *tutte* le preferences o remove(String key) per un lavoro più di fino. Da richiamare al'onCreate dell'activity principale.

Offline davix10

  • Utente normale
  • ***
  • Post: 159
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Lg G4
  • Play Store ID:
    davix10
  • Sistema operativo:
    Windows 10
Re:Rimuovere dati all'avvio dell'applicazione
« Risposta #4 il: 15 Ottobre 2014, 19:46:23 CEST »
0
Ma in questo modo se torno nell'activity principale non perdo i dati?

Offline Sakazaki

  • Utente normale
  • ***
  • Post: 396
  • Respect: +74
    • Mostra profilo
  • Dispositivo Android:
    Sony xperia Z
  • Play Store ID:
    Saka Labs
  • Sistema operativo:
    Windows 8
Re:Rimuovere dati all'avvio dell'applicazione
« Risposta #5 il: 15 Ottobre 2014, 23:04:09 CEST »
0
Ma in questo modo se torno nell'activity principale non perdo i dati?

l'onCreate viene chiamato solo quando l'activity viene creata, quando apri la seconda activity la prima viene messa in pausa, quando ritorni alla prima viene richiamato l'onResume. L'onCreate verrebbe chiamato solo se hai in precedenza chiamato esplicitamente il finish() sulla activity, o se il sistema ha esaurito le risorse e ha distrutto la prima activity per recuperare memoria per far partire processi con priorità più alta.

Offline davix10

  • Utente normale
  • ***
  • Post: 159
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Lg G4
  • Play Store ID:
    davix10
  • Sistema operativo:
    Windows 10
Re:Rimuovere dati all'avvio dell'applicazione
« Risposta #6 il: 16 Ottobre 2014, 08:01:00 CEST »
0
Ma devo chiamare il metodo dalla seconda activity per eliminare i valori nell'activity principale?