位置: 编程技术 - 正文

Android 退出整个应用程序解决方案(android退出功能)

编辑:rootadmin

推荐整理分享Android 退出整个应用程序解决方案(android退出功能),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:android 退出activity,android退出功能,android 完全退出app,android退出整个程序再次打开依旧是退出页面,android退出整个程序再次打开依旧是退出页面,android退出整个程序,android退出整个程序,android退出整个程序再次打开依旧是退出页面,内容如对您有帮助,希望把文章链接给更多的朋友!

1、通过广播

相信有过项目经验的同学都遇到过这样的问题,就是设计“退出”功能时可能会遇到有些界面不能关闭的问题。当然如果你的项目所有的界面都在打开另一个界面时被关闭就不存在这个问题了,但大多数情况下这样是很不合理的,因为每次要查看这个界面都需要重新加载数据。尤其对于需要走网络的数据显示,这不仅效率低而且成本高。

网上大概有以下几种方法解决这个问题:

但这些貌&#;不是万能的,有的说在2.2版本后就失效了,那我们怎么办呢?在起初的一个项目里我用了一个比较笨的方法,我用一个类来专门管理所有的Activity。这个类里有一个List,每打开一个Activity我就把这个Activity放到这个List中,当退出时再将List中所有的Activity一个一个的关闭。

在后来的项目中发现了一个更好地方法,就是通过广播来完成退出功能,具体实现过程是这样的:在每个Activity创建时(onCreate时)给Activity注册一个广播接收器,当退出时发送该广播即可。大概的代码如下:

相信聪明的大家会把上面的代码写在一个基类里面,因为如果你的项目中Activity很多的话,写起来很麻烦,而且也不符合代码规范。

在退出时执行以下代码即可关闭所有界面完全退出程序:

Android 退出整个应用程序解决方案(android退出功能)

getApplicationContext().sendBroadcast(new Intent("finish"));

转载: 在D中使用下面的代码: Intent intent = new Intent(); intent.setClass(D.this, A.class); intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); //注意本行的FLAG设置 startActivity(intent); finish();关掉自己 在A中加入代码: Override

protected void onNewIntent(Intent intent) { // TODO Auto-generated method stub

super.onNewIntent(intent);

//退出

if ((Intent.FLAG_ACTIVITY_CLEAR_TOP & intent.getFlags()) != 0) {

finish();

}

}

A的Manifest.xml配置成android:launchMode="singleTop"

原理总结: 一般A是程序的入口点,从D起一个A的activity,加入标识Intent.FLAG_ACTIVITY_CLEAR_TOP这个过程中会把栈中B,C,都清理掉。因为A是android:launchMode="singleTop" 不会调用oncreate(),而是响应onNewIntent()这时候判断Intent.FLAG_ACTIVITY_CLEAR_TOP,然后把A finish()掉。 栈中A,B,C,D全部被清理。所以整个程序退出了。

android快递跟踪进度条 android快递跟踪进度条activity.classimportjava.util.ArrayList;importjava.util.HashMap;importjava.util.List;importjava.util.Map;importandroid.app.Activity;importandroid.os.Bundle;importandroid.wi

获取Android设备的唯一识别码|设备号|序号|UUID 如何获取一个能唯一标识每台Android设备的序号?这个问题有很多答案,但是他们中的大部分只在某些情况下有效。根据测试:所有的设备都可以返回一

Android刷新本地相册 发现程序把图片保存到sdcard后,在相册里面找不到,只有在sdcard重新装载后会出现图片;原来图片保存到本地后,需要通知相册,加上如下代码就好了

标签: android退出功能

本文链接地址:https://www.jiuchutong.com/biancheng/384258.html 转载请保留说明!

上一篇:android 4.0 兼容性问题 java.lang.NoSuchMethodError TextView.setBackground(如何解决android兼容问题)

下一篇:android快递跟踪进度条(跟踪快件)

  • 汇算清缴计提所得税在哪个月
  • 税务ukey使用教程视频
  • 代扣代缴个人所得税有滞纳金吗
  • 不是党员证明哪些情况需要开
  • 金税四期有什么优势
  • 兼职人员工资需要申报个税吗
  • 房屋租赁备案要准备什么资料
  • 公司取现需要带什么东西
  • 委托加工白酒怎么入账
  • 税务局多扣的税可以退吗
  • 虚开发票企业所得税怎么补缴税?
  • 应付账款周转率分析
  • 扣员工餐费需要缴纳个税吗
  • 企业自产自销的成本怎么核算?
  • 印花税法律制度规定不征收印花税的是什么
  • 红字发票信息表填好后再怎么操作
  • 房产税缴纳时间规定
  • 纳税人转让2016年以后的土地使用权
  • 工程价款是什么意思
  • 建筑业甲供工程税率
  • 一般纳税人开普票税率是3%还是13%
  • 其他债券投资出售时交易费用
  • 不含税进货价
  • 运输费计入什么会计科目?
  • Windows10如何禁止电脑自动安装软件
  • PHP:mb_check_encoding()的用法_mbstring函数
  • moviemaker是什么软件
  • 手续费及佣金扣除标准
  • 融资a轮之前
  • 不给佣金
  • php单例模式例子
  • 售后回租融资租赁案例
  • 固定资产有何特征?
  • smart模板教程
  • php使用pdo连接数据库
  • 神经网络模型是干嘛的
  • css选择器权重
  • didstata命令
  • ps怎么把图片套入样机快捷键
  • 手机做固定资产报废理由怎么写好
  • 研发费用加计扣除2022政策
  • 关于机动车的法律定义
  • 所得税在什么情况下免税
  • python中numpy.empty()函数的用法
  • dedecms建站操作
  • 残疾人保障金所属期怎么填
  • java连接mysql数据库
  • 计税成本对象的分类
  • 个体户如何填报工商年报资金数额
  • 有限合伙企业中有限合伙人承担责任的方式为
  • 红冲以前年度费用
  • 在建工程如何转固
  • 溢价交易和折价交易
  • 衍生工具属于什么科目
  • 原材料的合理损耗计入入账成本吗
  • 租来的办公室装修费摊销几年
  • 新会计准则捐赠收入
  • mysql5.5安装配置教程
  • win10音量调节不显示
  • vs 2008
  • nhaspx.exe是什么
  • win8如何更新驱动
  • linux修改分组
  • service5.exe - service5是什么进程 有什么用
  • centos 操作
  • windows8.1的设置在哪
  • win8 应用商店
  • quick-cocos2d-x如何在mac下编译安卓版本
  • ExtJs扩展之GroupPropertyGrid代码
  • nodejs writestream
  • 删除滑动解锁图片
  • 啥叫七个不得
  • js创建对象的三种方式
  • js控制横向滚动条
  • 如何在js中实现输入
  • 运输专票怎么开发票
  • 广东电子税务局财务报表在哪里查询
  • 什么是"五证合一"登记制度?办理"五证合一"程序和方案
  • 国税三所电话
  • 经纪代理服务税率是多少 1%
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设