关于退出所有Activity,目前网上比较流行的方式大概有以下几种: ① 使用ActivityManager的方式: ② 自定义一个Activity集合类的方式: ③ 通过发送广播的方式: ④ 通过杀死当前应用进程的方式: 以上方式的具体实现大家可自行谷歌百度,此处不再赘述. 但是这些方式要么不太靠谱,要么有限制,要么不够优雅.今天我们就来说一个简单有效,优雅大方的方式来退出所有的Activity. 原理 先来说一下原理.我们知道,Activity有四种启动模式,分别为:standard(默认模…
在开发过程中,我们常常需要一个退出功能,来退出该应用的所有Activity.下面,我们列举一些退出应用的几种方式.以下用的源码点击查看源码地址 欢迎star,欢迎fork 利用ActivityContainer来管理所有的Activity的引用 使用广播通知BaseActivity结束 直接杀死进程 采用SingleTask的特点,结束应用 第四种方式的更优雅实现 双击返回键退出 方式一:利用ActivityContainer管理所有的Activity引用 该方式是建立一个通用的Activity…
启动一个Activity的几种方式在Android中我们可以通过下面两种方式来启动一个新的Activity,注意这里是怎么启动,而非启动模式!分为显示启动和隐式启动! 1.显式启动,通过包名来启动,写法如下: A:最常见的startActivity(new Intent(当前Activity.this,要启动的Activity.class)); B:通过Intent的ComponentNameComponentName cn = new ComponentName("当前Activity的全类名…
Android退出应用最优雅的方式(改进版)(转) 我们先来看看几种常见的退出方法(不优雅的方式) 一.容器式 建立一个全局容器,把所有的Activity存储起来,退出时循环遍历finish所有Activity import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.os.Bundle; public class BaseActivity extends Acti…
在android中使用:[activityname].this.finish();  只是退出了activity的堆栈中,要真正的退出程序在手机cpu中的运行,当应用不再使用时,通常需要关闭应用,可以使用以下三种方法关闭android应用: 一   使用killProcess()函数,首先获取当前进程的id,然后杀死该进程: android.os.Process.killProcess(android.os.Process.myPid()); 通过这种方式不能将应用程序完全杀死,并且他不会把当前…
1.在一个Activity中调用startActivity()方法 2.在一个Activity中调用startActivityRequest()方法. 重写onActivityResult方法,用来接收B回传的数据.在B中回传数据时采用setResult方法,并且之后要调用finish方法. 第一种方法简单直接.但是如果A调用B,并传递数据,同时B对数据处理后又返回给A,A再将数据显示出来.碰到这种情况,用第一种方法需要在A的onCreate()里面判断是第一次生成的界面,还是由B打开的A.这样…
Android退出时,有的Activity可能没有被关闭.为了在Android退出时关闭所有的Activity,设计了以下的类: //关闭Activity的类 public class CloseActivityClass{ public static List<Activity> activityList = new ArrayList<Activity>(); public static void exitClient(Context ctx) { // 关闭所有Activit…
在一个Process或一个处理线程中退出Activity可以用context来退出,如下: ((Activity)context).finish(); Android程序有很多Activity,比如说主窗口A,调用了子窗口B,如果在B中直接finish(), 接下里显示的是A.在B中如何关闭整个Android应用程序呢?本人总结了几种比较简单的实现方法. 1. Dalvik VM的本地方法 android.os.Process.killProcess(android.os.Process.myP…
如题: android退出登陆后,清空之前所有的activity,进入登陆主界面 在退出登陆时只需要增加一个intent标志 Intent intent_login = new Intent(); intent_login.setClass(SettingActivity.this,MyActivity.class); intent_login.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); //关键的一句,将新的activity置为栈顶 startActiv…
在Android中,Activity主要负责前台页面的展示,Service主要负责需要长期运行的任务,所以在我们实际开发中,就会常常遇到Activity与Service之间的通信,我们一般在Activity中启动后台Service,通过Intent来启动,Intent中我们可以传递数据给Service,而当我们Service执行某些操作之后想要更新UI线程,我们应该怎么做呢?接下来我就介绍两种方式来实现Service与Activity之间的通信问题 通过Binder对象 当Activity通过调…