zoukankan      html  css  js  c++  java
  • Android 完全退出应用程序

    1、【使用ActivityManager的killBackgroundProcesses方法】
    ------------------------------------------------------------------------------------------------
    2、【使用ActivityManager的restartPackage方法】
    ------------------------------------------------------------------------------------------------
    3、【使用androud.os.Process.killProcess方法】
    ------------------------------------------------------------------------------------------------
    4、【System.exit(0)方法】
    ------------------------------------------------------------------------------------------------
    5、【使用广播机制退出程序的方法】    
         思路:在你的每个Activity里,注册一个特定的Broadcast,当你想退出程序时,就send一个特定的Broadcast,
             这样所有还没有finish的activity都可以接收到这个broadcast,接收到broadcast后,就finish掉Activity。
       这样该程序的所有Activity就finish了,也就达到了退出程序的效果。

         实例代码:
      写一个基类,继承Activity,供后续Activity使用,目的:优化程序,减少重复代码
      public class Application  extends Activity { 
        private BroadcastReceiver receiver = new BroadcastReceiver() {
         public void onReceive(Context context, Intent intent) {
         finish();
         }
        };
        @Override
        public void onResume() {
        super.onResume();
        IntentFilter filter = new IntentFilter(); // 在当前的activity中注册广播
        filter.addAction("Exit");
        this.registerReceiver(this.receiver, filter)
        }  
      }
      然后在需要退出的Activity中添加close方法,然后在要进行退出程序操作的地方调用close方法即可。代码如下:
      private void close(){
       Intent intent = new Intent();
       intent.setAction("ExitApp");
       sendBroadcast(intent);
       super.finish();
      }
     注意:如果你的程序中的Activity比较少,那么建议你不要使用这种方法;上述方法在Activity比较多的情况下比较凑效。

  • 相关阅读:
    【IDDFS】Power Calculus
    【A*/K短路】 [USACO08MAR]Cow Jogging G
    P1880 [NOI1995]石子合并
    【区间DP】[USACO16OPEN]248 G
    【树上背包】P1273 有线电视网
    【分组背包】[BJOI2019]排兵布阵
    DP学习笔记——背包专题
    【思维/构造】D
    【线段树+扫描线】P5490 【模板】扫描线
    【最小生成树】畅通工程再续 HDU
  • 原文地址:https://www.cnblogs.com/zhangping/p/3514129.html
Copyright © 2011-2022 走看看