zoukankan      html  css  js  c++  java
  • android退出app的四种方法

    来源:http://www.open-open.com/home/space-37924-do-blog-id-5805.html

    这里摘录其中较为简单的三种,有兴趣可以通过链接查看原文。

    1. Dalvik VM的本地方法

      android.os.Process.killProcess(android.os.Process.myPid())    //获取PID 
      System.exit(0);   //常规java、c#的标准退出法,返回值为0代表正常退出

    2. 任务管理器方法

       首先要说明该方法运行在Android 1.5 API Level为3以上才可以,同时需要权限

      ActivityManager am = (ActivityManager)getSystemService (Context.ACTIVITY_SERVICE);
      am.restartPackage(getPackageName());
      系统会将,该包下的 ,所有进程,服务,全部杀掉,就可以杀干净了,要注意加上
      <uses-permission android:name="android.permission.RESTART_PACKAGES"></uses-permission>

    3. 根据Activity的声明周期

      我们知道Android的窗口类提供了历史栈,我们可以通过stack的原理来巧妙的实现,这里我们在A窗口打开B窗口时在Intent中直接加入标 志     Intent.FLAG_ACTIVITY_CLEAR_TOP,这样开启B时将会清除该进程空间的所有Activity。

    在A窗口中使用下面的代码调用B窗口

    Intent intent = new Intent();
    intent.setClass(Android123.this, CWJ.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);  //注意本行的FLAG设置
    startActivity(intent);

    接下来在B窗口中需要退出时直接使用finish方法即可全部退出。

  • 相关阅读:
    scrapy中selenium的应用
    Django的锁和事务
    redis
    【leetcode】187. Repeated DNA Sequences
    【leetcode】688. Knight Probability in Chessboard
    【leetcode】576. Out of Boundary Paths
    【leetcode】947. Most Stones Removed with Same Row or Column
    【leetcode】948. Bag of Tokens
    【leetcode】946. Validate Stack Sequences
    【leetcode】945. Minimum Increment to Make Array Unique
  • 原文地址:https://www.cnblogs.com/fanerblog/p/4878462.html
Copyright © 2011-2022 走看看