位置: 编程技术 - 正文

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

  • 出口退税免税政策
  • 公司费用票
  • 小规模 季度
  • 收到政府土地补偿,用于种植农作物
  • 报销是否需要发票
  • 股份制改造而发生的资产评估增值税法规定
  • 可抵扣农产品进项税额吗
  • 汇总记账凭证会计核算组织形式适用于
  • 分期收款开具发票可以吗
  • 银行承兑逾期证明怎么写
  • 其他应付款款
  • 用友如何取消月末结转
  • 公司活动发言稿范文
  • 支付给对方的押金
  • 公司购电缆用于生产如何记账?
  • 增值税专用发票验证真伪
  • 股权转让印花税税率
  • 税务行业软件
  • 免征的教育费附加如何账务处理
  • 销售商品代垫的运杂费会计分录
  • 债务重组过程
  • 出口加工区内企业可经营什么业务
  • 什么是销售利润率和成本利润率
  • 财产转移数据缴费怎么交
  • 金蝶旗舰版反过账的操作步骤
  • 补缴社保差额有滞纳金吗
  • 委托代销商品账簿模板
  • 利息保障倍数如何计算
  • 固定资产折旧有几类
  • windows10软件图标不正常显示
  • 怎样找此电脑
  • 补记以前年度收入怎么做账
  • 上个月做无票收入这个月开票,怎么做分录
  • nvm安装及全局配置node
  • web十六进制颜色
  • 命令行基础
  • php框架symfony
  • 加德满都治安状况如何
  • 零申报怎么做报表
  • 限定性收入跟非限定性收入的区别
  • php使用ajax
  • 劳务费过账
  • 工伤补贴如何做帐
  • 个人所得税两处或两处以上工资、薪金所得纳税申报表
  • 营业收入的构成分析包括
  • 营业总成本包括投资收益吗
  • 未确认融资费用摊销额怎么计算
  • 公司废料收入如何开票
  • 什么情况企业需要调档
  • mysql死锁的处理方法
  • 先买再卖影响可取现金吗
  • 个人独资企业购入设备可以一次性计提吗
  • 专项应付款支出的账务处理
  • 汇算清缴补交所得税的分录
  • 信用卡逾期滞纳金怎么收取
  • 安置用房视同销售,怎么确认扣除费用?
  • 营业外收入在汇算清缴里填哪张表
  • 递延收益属于哪个报表项目
  • 出口退税综合服务网
  • 单价合同如何计算印花税
  • 外资房地产企业 利润汇出比例
  • 查看linux服务器内存命令
  • win10设置回收站位置
  • freelibrary 程序崩溃
  • window8设置ip
  • win10怎么禁用device/credential guard
  • windows执行bat命令
  • 电脑怎么连接上隐形wi
  • linux中的vi编辑器一般有哪三个模式
  • cocos lua js
  • 3dmax创建图形怎么用
  • Unity符国新:3D技术将渗透到生活的各个方面
  • python提供三种基本数值类型
  • javascript的dom
  • 湖北省电子税务局操作指南
  • 股权转让税收优惠个人所得税
  • 如果我中了双色球
  • 三亚国税局各区领导班子
  • 车船发票什么样子
  • 房地产预缴土增值税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设