位置: 编程技术 - 正文

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快递跟踪进度条(跟踪快件)

  • 增值税核算办法
  • 企业如何代扣代缴劳务报酬所得税
  • 内账采购含税怎么转不含税
  • 固定资产投资子公司交增值税税吗
  • 公允价值变动损益增加记哪方
  • 两家公司原材料能否借用
  • 没有收入的小规模纳税人可以无票入费用吗?
  • 固定资产投资转化为gdp比例
  • 进项抵欠税相关政策
  • 环评费用包括哪些
  • 收到客户不要的定金怎么做账?
  • 西安的税务局
  • 认可的发票验证怎么弄
  • 免税单位取得增值税发票
  • 特许权使用费的收入确认时间
  • 财务会计中的费用
  • 对于不需要交强险的人
  • 中小企业货币资金内部控制案例
  • 企业在开办期间发生的费用如何处理
  • 销售二手设备税率
  • 防暑降温列支什么费用
  • 实收金额比应收金额多
  • 全年平均职工人数按季度平均公式
  • win10怎么看电脑名称
  • 财政拨款收入的明细科目
  • 资产评估报告包括
  • 电脑管家玩游戏卡吗
  • linux mint 20.1安装
  • php运用于哪些领域
  • 期间损益结转有余额
  • 项目融资中风险有哪些
  • powerremind.exe
  • php怎么与mysql连接
  • 持有至到期投资在资产负债表怎么填
  • php面向对象和面向过程
  • thinkphp登录
  • 服务业增值税加计扣除账务处理
  • web自动化测试方法
  • 公司注销账面实收资本如何处理
  • 国家税务总局关于营改增后土地增值税
  • 建筑业 成本
  • 其他应付款贷方表示什么意思
  • 公司注册地址变更有什么影响
  • Windows7下Microsoft SQL Server 2008安装图解和注意事项
  • 个人工资薪金如何零申报
  • 买一赠一是什么促销方式
  • 研发费用归集的主要范围有哪些
  • 企业清算未分配利润怎么交税
  • 举办会议收入如何入账
  • 费用报销单填写标准
  • 单位租赁个人房子怎么缴纳房产税
  • 什么叫社保差额调整
  • 登记总分类账的依据有
  • 预付款怎样做会计分录
  • ROW_NUMBER SQL Server 2005的LIMIT功能实现(ROW_NUMBER()排序函数)
  • navicat 导入
  • win10系统微软账号退不了怎么办
  • win7 系统设置
  • win8系统安装步骤
  • xp系统如何隐藏我的电脑
  • ubuntu彻底删除
  • 为什么国外程序员比国内厉害
  • win1020h2无法重启
  • win10双击应用程序没反应
  • win10共享打印机win7连不上
  • js基于对象的特点是什么
  • 微信小程序实现留言功能
  • c++ not1
  • vue怎么实现多页面
  • 用javascript写表单代码
  • Python高手之路第3版PDF下载
  • python求解析解
  • 使用筷子就餐会不会传染乙肝病毒
  • Android 使用log4j2
  • 浙江省网上税务服务大厅
  • 国家税务总局令第43号公告
  • 国家税务总局2016年17号公告
  • 新疆农信怎么注册登录
  • 开红酒增值税票怎么开
  • 房屋契税可以退个人所得税吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设