本文示例实现了Android退出时关闭所有Activity的功能,分享给大家供大家参考之用。具体方法如下:
一般来说,在Android退出时,有的Activity可能没有被关闭。为了在Android退出时关闭所有的Activity,这里给出了以下的类:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
//关闭Activity的类 public class CloseActivityClass{ public static List<Activity> activityList = new ArrayList<Activity>(); public static void exitClient(Context ctx) { // 关闭所有Activity for ( int i = 0 ; i < activityList.size(); i++) { if ( null != activityList.get(i)) { activityList.get(i).finish(); } } ActivityManager activityMgr = (ActivityManager) ctx.getSystemService(Context.ACTIVITY_SERVICE ); activityMgr.restartPackage(ctx.getPackageName()); System.exit( 0 ); } } |
然后在应用中每一个Activity的onCreate(Bundle savedInstanceState)方法中增加一句:
1
|
CloseActivityClass.activityList.add( this ); |
在应用退出时:
1
|
CloseActivityClass.exitClient(MainActivity. this ); |
这样,当退出应用时就可以将该应用的所有Activity彻底关闭。
相信本文所述对大家的Android程序设计有一定的借鉴价值。