1. New class activity manager class Activitycollector
Public classActivitycollector { Public StaticList<activity>activities =NewArraylist<activity>(); Public Static voidaddactivity (activity activity) {Activities.add (activity); } Public Static voidremoveactivity (activity activity) {activities.remove (activity); } Public Static voidFinishall () { for(Activity activity:activities) {if(!activity.isfinishing ()) {activity.finish (); } } }}
Provides a addactivity () method for Adding an activity to the list
Provides a removeactivity () method to remove an activity from the list
Finally, a Finishall () method is provided to destroy all the activities stored in the list
2. New class baseactivity inherit from activity
The
does not set the interface in Baseactivity, . They will also inherit everything from the activity;
public class baseactivity extends Activity {@Override protected void OnCreate (Bundle Savedinstancestate) { super .oncreate ( Savedinstancestate); LOG.D ( "baseactivity", GetClass (). Getsimplename ()); // monitor which activity starts Activitycollector.addactivity (this protected void OnDestroy () { //activity off, remove the activity from activities
Super . OnDestroy (); Activitycollector.removeactivity (this); } }
3. When you need to, callActivitycollector.finishall (); You can turn off all activities!
Exit all apps, monitor what activity is open