在开发android应用程序时,我们可以通过Activity的finish()方法来结束当前的Activity,但是如果要关闭当前的应用程序呢?下面介绍三种方法来实现关闭应用程序:

方法一:

System.exit(int status);//常规java、c#的标准退出法,返回值为0代表正常退出

or

android.os.Process.killProcess(android.os.Process.myPid());

方法二:

2. 任务管理器方法

首先要说明该方法运行在Android 1.5 API Level为3以上才可以,同时需要权限android.permission.RESTART_PACKAGES,我们直接结束自己的package即 可,直接使用ActivityManager类的restartPackage方法即可,参数为package name,该类通过getSystemService(Context.ACTIVITY_SERVICE)来实例化ActivityManager对 象,这种方法系统提供的,但需要显示声明权限,所以使用中需要综合考虑。

方法三:

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);

更多相关文章

  1. 真机上使用Hierarchy Viewer
  2. Android(安卓)studio 命令gradlew assembleRelease打包时,出现 Un
  3. android类作用整理
  4. Js Android(安卓)交互
  5. Android(安卓)源码的建造者模式
  6. Android(安卓)M新特性Doze and App Standby模式详解
  7. 常用的控件使用方法(TextView及其常用属性)
  8. Android(安卓)5.0(Lollipop)事件输入系统(Input System)
  9. Android(安卓)- Compass(罗盘) 详解

随机推荐

  1. Android Log统一管理类
  2. android下载文件保存到sd卡
  3. Rockie's Android Porting Guide(4)——Add
  4. 至2013年5月初android各个版本市场占有情
  5. android的全屏和屏幕高宽的获取
  6. Android dp,sp,pt,in,mm,px换算
  7. Android获取屏幕宽和高
  8. [置顶] android软键盘的隐藏问题
  9. android 广播机制(1) 注册广播
  10. Android 下保持屏幕常亮