Tuesday, 6 August 2013

Android prevent restoring the activity

Android prevent restoring the activity

I have a viewpager holding many fragments. When the activity is sent to
background and when resources are needed, the OS will kill the app or at
least some fragments. When I return to the activity it crashes because the
activity tries to attach new instances of all fragments it held before the
clean-up and now some fields are null. This of course could be fixed by
properly implementing state saving and restoring using Bundles, but I
don't want to do that. Instead I want to prevent restoring the fragments.
Is there a way to tell the OS that once it has sent the GC in and
destroyed fragments, it shouldn't bother recreating them at all? Once the
cleaning-up happens, I want the activity to be simply recreated on return,
as if a user launched it by taping the icon. Any chance of doing that?
The proposed solution here http://stackoverflow.com/a/15683289/552735 does
not work. It causes exceptions java.lang.IllegalStateException: Fragement
no longer exists for key f2: index 3

No comments:

Post a Comment