退出程序(转自:第一行代码)
如果目前你手机的界面还停留在ThirdActivity,你会发现当前想退出程序是非常不方便的,需要连按三次Back 键才行。按Home 键只是把程序挂起,并没有退出程序。其实这个问题就足以引起你的思考,如果我们的程序需要一个注销或者退出的功能该怎么办呢?必须要有一个随时随地都能退出程序的方案才行。其实解决思路也很简单,只需要用一个专门的集合类对所有的活动进行管理就可以了,下面我们就来实现一下。
一.新建一个ActivityCollector 类作为活动管理器,代码如下所示:
public class ActivityCollector {
public static List<Activity> activities = new ArrayList<Activity>();
public static void addActivity(Activity activity) {
activities.add(activity);
}
public static void removeActivity(Activity activity) {
activities.remove(activity);
}
public static void finishAll() {
for (Activity activity : activities) {
if (!activity.isFinishing()) {
activity.finish();
}
}
System.exit(0);
}
}
二.新建一个BaseActivity
public class BaseActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d("BaseActivity", getClass().getSimpleName());
ActivityCollector.addActivity(this);
}
@Override
protected void onDestroy() {
super.onDestroy();
ActivityCollector.removeActivity(this);
}
}
三.所有Activity继承BaseActivity,再退出的地方加
ActivityCollector.finishAll();
*****************
Android 应用退出后不留在最近运行任务栏中
只要给Activity设置“Android:excludeFromRecents=true”即可,官方的解释如下:
如果设置为true,那么这个Activity将不会出现在最近任务列表中,如果这个Activity是整个Task的根Activity,整个Task将不会出现在最近任务列表中。
相关文章
- 微信小程序-关于日期选择器(input)
- easyx程序实例
- 微信小程序轮子 - 瀑布流布局+数据懒加载(可替换图片瀑布流懒加载 / 视频瀑布流懒加载等等)
- uni-app - 实现多选功能,点击项目时选中并高亮显示(支持全选 / 反选,以及轻松的 “回显“ 数据)点击选中并改变样式,全端兼容 H5 App 小程序,代码高效简洁无 BUG
- uni-app - 文本展开 / 收起折叠功能,支持自定义样式(当文本内容超出规定行数后,展开收起折叠的功能)兼容 H5 / App / 小程序且易用更容易修改的插件组件源码,超详细的示例代码及注释
- 设置iSCSI的发起程序(客户端)(三)
- 【程序的艺术】+代码结构设计
- 小程序版本再次发布升级
- 微信小程序wxss的background本地图片问题
- 小程序获取openid
- 《Java编码指南:编写安全可靠程序的75条建议》—— 指南7:防止代码注入
- 《Java编码指南:编写安全可靠程序的75条建议》—— 指南21:不要让不可信代码误用回调方法的特权
- 《SOA达人迷》—第2章2.3节第3个问题:企业的软件应用程序中是否有核心技术?
- python和C++代码实现图片九宫格切图程序(附VS2015配置Opencv教程)
- 小程序基础能力~画布
- 【Unity3D软硬件】Unity3d与串口通信程序的开发
- 改善C#程序的建议2:C#中dynamic的正确用法
- java代码实现获取微信小程序码并返回图片地址
- delphi 牛逼 了 app (已在软件界掀起波澜)10分钟10行代码做出让人惊叹的程序
- 程序设计基石与实践系列之编写高效的C程序与C代码优化
- 解决 'express' 不是内部或外部命令,也不是可运行的程序
- 练习 1-23 编写一个删除C语言程序中所有的注释语句。要正确处理带引号的字符串与字符常量。在C语言中,注释不允许嵌套。