package com.fsck.k9.activity.misc; import android.app.Activity; public interface NonConfigurationInstance { /** * Decide whether to retain this {@code NonConfigurationInstance} and clean up resources if * necessary. * *
* This needs to be called when the current activity is being destroyed during an activity
* restart due to a configuration change.
* Implementations should make sure that references to the {@code Activity} instance that is
* about to be destroyed are cleared to avoid memory leaks. This includes all UI elements that
* are bound to an activity (e.g. dialogs). They can be re-created in
* {@link #restore(Activity)}.
*
* This also creates a new progress dialog that is bound to the new activity. *
* * @param activity * The new {@code Activity} instance. Never {@code null}. */ public void restore(Activity activity); }