Autore Topic: Impedire la cancellazione dei dati salvati  (Letto 452 volte)

Offline Zampa

  • Nuovo arrivato
  • *
  • Post: 32
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Tab 2 7.0
  • Sistema operativo:
    Windows 8
Impedire la cancellazione dei dati salvati
« il: 02 Marzo 2014, 12:20:45 CET »
0
Ciao,

nella mia applicazione ho necessità di salvare alcuni dati relativi all'utente che sta utilizzando l'app (nome utente, password, nomi degli amici, ecc...). Quando l'utente apre per la prima volta l'app gli chiedo di inserire i dati (che andrò a salvare). Per tutti i successivi avvii eseguirò l'accesso utilizzando i dati che ho salvato su disco.
Penso che la cosa migliore sia creare una mia classe AppSettings che espone i suddetti campi, dovrò poi serializzare l'oggetto su disco nello spazio privato della mia app... e già qua non so bene come fare...
Inoltre, se l'utente entra in Impostazioni -> Gestione Applicazioni -> MiaApp, trova il pulsante "Cancella dati" che va ad eliminare il file che io ho salvato, e quindi l'app perderebbe tutti i dati relativi all'utente!!

Qual'è quindi il modo giusto di procedere? E' possibile salvare dei dati che verranno cancellati solo quando verrà disinstallata l'applicazione?

Grazie,
Nicola

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:Impedire la cancellazione dei dati salvati
« Risposta #1 il: 02 Marzo 2014, 16:18:51 CET »
0
Se i dati sono pochi, e comunque in numero noto, li salvi nelle SharedPreferences, altrimenti in un database SQLite. Volendo puoi crearti da zero la tua classe per persistenza e serializzazione dei dati, ma è abbastanza inusuale e decisamente più pesante da implementare.

Il tasto "cancella dati" è corretto che si comporti in quel modo, è esattamente la sua funzione.
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

iClaude

  • Visitatore
Re:Impedire la cancellazione dei dati salvati
« Risposta #2 il: 03 Marzo 2014, 12:41:37 CET »
0
Io farei semplicemente così: ad ogni avvio dell'app verifichi che ci siano i dati dell'utente, e in caso contrario lanci l'Activity che li richiede...

Offline white$hark

  • Nuovo arrivato
  • *
  • Post: 42
  • Respect: +2
    • Mostra profilo
  • Dispositivo Android:
    Nexus4
  • Sistema operativo:
    Windows 7
Re:Impedire la cancellazione dei dati salvati
« Risposta #3 il: 03 Marzo 2014, 18:26:06 CET »
0
secondo me le SharedPreferences sono la soluzione migliore. Al rimo avvio mostri la schermata in cui inserire i dati, dopodichè salvi le impostazioni settando "primoAvvio=0" così i dati resteranno e la pagina di inserimento non sarà visibile fino al reset.
Cancellando i dati in quel modo riporti ogni app a 0, come al momento dell'installazione, quindi preferenze e dati manuali non si preservano.
« Ultima modifica: 03 Marzo 2014, 18:28:08 CET da ciao99 »