Autore Topic: Consiglio: come gestire i vari stati dell'aplicazione  (Letto 763 volte)

Offline Noccio91

  • Nuovo arrivato
  • *
  • Post: 2
  • Respect: 0
    • Mostra profilo
Consiglio: come gestire i vari stati dell'aplicazione
« il: 08 Agosto 2011, 11:30:01 CEST »
0
ciao a tutti,
sono nuovo di questo mondo, vi ringrazio subito per il tutorial sui database che mi è stato molto utile ed ora espongo subito il mio problema/dubbio.

La mia applicazione è molto semplice, lo pensata per me per salvarmi le password che utilizzo nei vari siti, ora vi spiego velocissimamente la struttura.
L'app ha solo 4 activity, di qui la prima richiede di effettuare l'accesso tramite un login con nome e password per permettere di accedere al proprie password salvate solo a chi conosce la password (l'idea è quella di keypassportable per capirsi),
poi all'interno si può navigare tra un'activity e l'altra liberamente e non ci sono problemi e tutto funziona.

Ora il mio problema/dubbio, quando per un qualsiasi motivo la mia app viene chiusa/messa in background, vorrei che al richiamo non fosse ritornata la pagina precedentemente chiusa (magari prima ero su quella della lista dei siti già autenticato e quindi la parte del login và in fuffa), ma vorrei far tornare la prima activity di login per dover ri-effettuare il login di autenticazione.

Quindi io credo, ma sono qui per chiedere a voi più esperti XD, se la soluzione è di dover gestire in ogni activity lo stato OnPause, OnStop, OnResume...
Ditemi secondo voi come potrei gestire il mio problema/dubbio.

Cerco di spiegarmi meglio qua sotto,

activity Login ---> activity Lista campi
                                                      --> activity aggiunta nuovo campo
                                                      --> activity vedi campo

io non voglio che ad esempio dopo aver premuto il tasto home mentre ero nell'activity Lista campi, al lacio nuovamente dell'app lei ritorni in Lista campi, ma voglio invece che richieda nuovamente il login, quindi l'activity iniziale...
grazie in anticipo ( se non sono stato chiaro scusate riformulo meglio ;-) )

Offline rs94

  • Utente normale
  • ***
  • Post: 227
  • Respect: +21
    • Mostra profilo
  • Dispositivo Android:
    Sony Ericsson Xperia Arc S
  • Sistema operativo:
    Windows 8
Re:Consiglio: come gestire i vari stati dell'aplicazione
« Risposta #1 il: 08 Agosto 2011, 13:00:15 CEST »
0
"Gioca" con la propietà delle activity noHistory.
Questa propietà fa sì che quando una activity perde il focus (cioè non è più quella visualizzata) viene chiamato il metodo onFinish() che la rimuove dalla memoria. Quindi:
-se tu vuoi che da una activity qualsiasi si possa tornare a quella di login (che secondo me non avrebbe senso :D) metti noHistory a true su tutte tranne che su quella del login.
-se tu vuoi che ogni activity venga chiusa metti noHistory a true su tutte le activity. Questo però comporta che non puoi "tornare indietro", cioè se sei in activity lista campi e vai in vedi campo dopo non puoi ritornare a lista campi premendo il tasto back, ma devi implementare un bottone "Indietro" che ti avvii l'activity desiderata.

Mi scuso per la spiegazione contorta, se hai bisogno di chiarimenti chiedi pure :D
L'unica certezza è il dubbio.
Dubitare di se stessi è il primo segno di intelligenza.

Offline Noccio91

  • Nuovo arrivato
  • *
  • Post: 2
  • Respect: 0
    • Mostra profilo
Re:Consiglio: come gestire i vari stati dell'aplicazione
« Risposta #2 il: 08 Agosto 2011, 17:26:18 CEST »
0
grazie mille ilseric per questa soluzione  ;-),
non era propriamente ciò che cercavo, ma funziona con onHistory a true, xè effettivamente ogni volta che l'app non è più visualizzata in primo piano poi mi ritorna a fare il login...
Però se premo il tasto back (quello con la freccia che ritorna indietro XD ) mi esce.. per quello questo metodo funziona, ora io però ti chiedo, se non volessi che premendo il tasto back non mi si chiudesse l'app c'è un'altra possibilità da seguire?

Offline teskio

  • Moderatore globale
  • Utente normale
  • *****
  • Post: 387
  • Respect: +118
    • Github
    • Google+
    • Mostra profilo
    • Skullab
  • Dispositivo Android:
    Cubot GT99 / SurfTab Ventos 10.1
  • Play Store ID:
    Skullab Software
  • Sistema operativo:
    windows 7 / ubuntu 12.04
Re:Consiglio: come gestire i vari stati dell'aplicazione
« Risposta #3 il: 09 Agosto 2011, 00:05:32 CEST »
+1
Dalle api level 5 c'è il metodo onBackPressed () delle Activity. Fai l'override del metodo in modo da gestire la pressione del tasto back come credi.