位置: 编程技术 - 正文

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

  • 财产转让所得个人所得税优惠政策
  • 跨年取得的发票怎么入账
  • 文化服务费内容是什么
  • 淘宝网店女装
  • 一年房租正常摊销多少
  • 财产租赁合同金额含税吗
  • 公对私转账没有到账怎么查询
  • 发票未到已验收什么意思
  • 怎么查纳税人信用等级
  • 待抵扣税金凭证分录
  • 资产负债表存货怎么填列
  • 企业进口关税和消费关税
  • 股权转让交的税如何做账
  • 建筑企业城建税及教育附加税率
  • 股票投资及收益计算公式
  • 收到电子承兑汇票的账务处理
  • 房地产开发企业会计科目
  • 营改增安装服务费税率
  • 购买税控系统专用设备
  • 企业所得税期间费用明细表
  • 融资租入固定资产计提折旧吗
  • 关于设备延期交付说明
  • carrier profile
  • 电脑桌面刷新反应迟钝
  • 外观设计专利费减
  • 在线网速测试需要付费吗
  • php哈希表
  • 税务局返还的手续费需开发票吗
  • php的总结
  • 金融业营业税税率
  • 企业购进的商品又赠送给客户,怎么做分录呀
  • 浅谈php技术
  • 购房名义提取公积金
  • 营改增后酒店行业有哪些税种
  • php判断字符串是否存在
  • Yii2表单事件之Ajax提交实现方法
  • php实现截取中文字符
  • pytorch go
  • linux信号的本质
  • php array_key_exists() 与 isset() 的区别
  • php改html
  • 联营企业和合营企业是什么意思
  • 机动车发票冲红太多会怎么样
  • 为什么银行结息不加入账户
  • 软件企业会计账务处理
  • 融资手续费计入长期待摊
  • 企业年度汇算清缴申报表填写
  • 红字发票抵扣联要装订到凭证里吗
  • 外埠施工企业
  • 清包工方式建筑服务
  • 科技型中小企业享受优惠税收政策
  • 资产现金流量收益率为什么不是净利润除以平均现金流量
  • 个人独资企业法人可以发工资吗
  • 外资企业股权转让给内资企业流程
  • 银行承兑汇票利息归谁
  • 申请国家知识产权的条件
  • 办公家具生意怎么做
  • 个人如何进行股票交易
  • 财务费用包括哪几项
  • 建账前的准备工作
  • 商品流通企业进货费用
  • sql语句示例
  • sql ntext数据类型字符替换实现代码
  • sqlserver如何保留两位小数
  • win7多用户怎么删除
  • 提示explorer.exe
  • win7系统怎么禁用win键
  • win10以太网属性为空白怎么办
  • win8.1卸载系统自带应用工具
  • ghost32命令参数
  • node.js使用的v8引擎是由哪个公司开发的
  • jquery validator
  • android打开相机
  • shell脚本中实现rm -fr !(file1)
  • android系统联网
  • python爬取电视剧
  • 哪些保险有免赔额
  • 广西壮族自治区图书馆
  • 成都高新区税务局办税服务厅电话
  • 税务局风险防控工作总结
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设