Ho un viewpager contenente molti frammenti. Quando l'attività viene inviata in background e quando sono necessarie risorse, il sistema operativo uccide l'app o almeno alcuni frammenti. Quando torno all'attività si blocca perché l'attività tenta di allegare nuove istanze di tutti i frammenti che conteneva prima del clean-up e ora alcuni campi sono nulli. Questo, naturalmente, potrebbe essere risolto implementando correttamente il salvataggio e il ripristino dello stato utilizzando i pacchetti, ma non voglio farlo. Invece voglio impedire il ripristino dei frammenti. C'è un modo per dire al sistema operativo che una volta che ha inviato il GC e distrutto i frammenti, non dovrebbe preoccuparsi di ricrearli del tutto? Una volta eseguita la pulizia, desidero che l'attività venga semplicemente ricreata al momento del reso, come se un utente la lanciasse toccando l'icona. Qualche possibilità di farlo?Android impedisce il ripristino dell'attività
La soluzione proposta qui https://stackoverflow.com/a/15683289/552735 non funziona. Causa eccezioni java.lang.IllegalStateException: Fraging non esiste più per la chiave f2: index 3
Hai provato ad aggiungere 'finish()' nel metodo 'onStop()' dell'attività che contiene i tuoi frammenti? Non salverà gli stati di nulla. –
Che uccide l'attività ogni volta che viene inviato allo sfondo, anche quando premo il tasto Home. Questo non è quello che voglio - voglio solo che il sistema operativo smetta di ricreare tutti i frammenti che esistevano prima che li distruggesse. Per quanto posso vedere, il ViewPager ha il proprio meccanismo di ripristino dello stato, questo è ciò che causa questi problemi. – delegate