android intent singletask,singleTask模式Activity二次start接收Intent失败?
因项目需要,咱这有个singleTask模式的MainActivity,是个FragmentActivity。进入到别的功能页面后,经常在获得功能结果时,需要使用startActivity调起MainActivity。此时,activity栈中,刚才在MainActivity上面堆的所有Activity被咔嚓走,MainActivity重新站在顶点(singleTask特性,大家都明白)。同时,MainActivity要接收新传来的intent,获取extra,判断调起时显示哪个Fragment。
看起来很OK对不对?
然后咱就想当然地,直接startActivity,把数据放进intent,放手机里一试,哎?咋回事儿?为啥想显示FragmentB,结果显示的是MainActivity上次的状态?
在排除了代码逻辑问题后,乖乖去google。
问题原因找到了:singleTask模式下,第二次启动Activity时,不会重新实例化(这是当然的,省资源啊)。这种情况下,onCreate不会再走了,onResume也拿不到最新intent,因为新传来的intent没有经过任何接收处理。
解决方法参考:http://blog.csdn.net/harryweasley/article/details/46557827
基本上就是依赖了onNewIntent(Intent
intent)这个方法,在Activity里override一下。那个参数intent就是新的,需要我们在这里用setIntent(intent),将它设置到Activity中,而且还需要解析这个intent,拿到数据后就该做啥做啥了。
根据链接中的方法,如果有Fragment需要对此响应,就得在Fragment的onResume中处理。咱项目没这个需求,就米有用了。
记录,备忘,好记性不如烂笔头,何况我记性差到爆。
android intent singletask,singleTask模式Activity二次start接收Intent失败?相关推荐
- android低电量模式吗,Android P 省电模式(LowPowerMode)(二) ------ 省电行为
在上篇文章Android P 省电模式(LowPowerMode)(一) ------ 省电模式手动开启流程 中最后分析到,开启省电模式后,会在 BatterySaverController 中回调所 ...
- Android使用责任链模式处理二维码扫描结果
众所周知,二维码的扫描结果其实就是一个字符串,我们拿到一个结果需要对内容进行校验,是否是我们需要的信息,然后做一些特殊的处理.比如先判断是不是一个url链接,是则打开这个链接,不是的话进行下一种判断, ...
- Android当中的MVP模式(七)终篇---关于对MVP模式中代码臃肿
个人博客:CODE FRAMER BIGZ MVP系列文章配套DEMO Android 当中的 MVP 模式(一)基本概念 Android 当中的 MVP 模式(二)封装 Android 当中的 MV ...
- Android总结篇系列:Activity Intent Flags及Task相关属性
同上文一样,本文主要引用自网上现有博文,并加上一些自己的理解,在此感谢原作者. 原文地址: http://blog.csdn.net/liuhe688/article/details/6761337 ...
- 【错误记录】Android 应用安装后出现两个启动图标 ( 排查应用及依赖库中配置了 android.intent.category.LAUNCHER 的 Activity )
文章目录 一.报错信息 二.解决方案 一.报错信息 Android 应用安装后 , 出现两个相同的启动图标 , 其中一个可以启动 , 另外一个启动后 , 直接崩溃 ; 卸载其中一个 , 会将整个应用卸 ...
- Android 项目必备(四十二)-->Android 多窗口模式
简介 自由窗口模式: 该模式类似于常见的桌面操作系统, 应用界面的窗口可以自由的拖动和修改大小. 分屏模式 该模式可以在手机上使用, 该模式将屏幕一分为二, 同时显示两个应用界面. 画中画模式: 该模 ...
- Android常见设计模式——代理模式(Proxy Pattern)(二)
文章目录 1. 前言 2. 远程代理(Remote Proxy) 3. 后记 1. 前言 在上篇Android常见设计模式--代理模式(Proxy Pattern)中基本上知道了什么是代理模式,以及对 ...
- android数据回传多个页面_Android菜鸟起飞|使用Intent实现Activity跳转的两种方式(无回传数据和有回传数据)...
使用Intent实现Activity跳转的两种方式 1. 使用startActivity(intnet)方法实现无回传数据的Activity跳转: 使用方法: 为实现跳转动作的控件绑定监听器,在点击事 ...
- Android:调用其他程序中的activity和Permission Denial: starting Intent 错误解决办法
今天想调试多个task中栈的情况,在测试程序中调用另一个程序的activity, 代码片段如下: [java] view plain copy btnStartX=(Button)findViewB ...
- Android开发-Activity中“android:exported“属性的作用,以及“Permission Denial: starting Intent“错误解决
如何在一个应用程序中,启动另外一个应用程序?最近正有这样的需求,也踩了一个小坑.本节介绍使用Activity中"android:exported"属性来实现这种访问. Activi ...
最新文章
- 内网端口 转发 穿透 工具简介
- mysql支撑union_mysql 不支撑union select 的盲注方式
- python中坐标怎么表示_如何在Python中以像素表示(有限)平面上的坐标
- CF1422F Boring Queries(ST表 + 主席树)
- 如何根据原理图画封装_常用原理图封装
- hbase 按时刻查询_Hbase查询工具类,根据时间查询数据
- word论文排版插件_教你如何用word快速搞定论文排版
- (48)FPGA面试技能提升篇(数字采样、射频存储、频谱搬移)
- Linux 查看dns运行状态
- win7下jdk+eclipse android应用开发环境建立
- mysql5.7手册官方下载_MySQL官方手册5.7 PDF 下载
- 数据分析师岗位要求案例分析
- 计算机专业职业适应性考试包括什么内容,2020年分类招生《职业适应性测试(职业技能测试)》大纲...
- LeetCode739. Daily Temperatures
- 【AndroidStudio】按钮基本操作(普通按钮、图片按钮、单选按钮设置)(单击事件监听器触发对话框和页面跳转)
- web server and web service
- 流利阅读 2019.1.5 Gatekeeper at Japan’s ‘Suicide Forest’ hopes music can save lives
- 微信小程序中 iconfont 图标的使用(包括彩色图标)
- Python 之并发编程之manager与进程池pool
- Photoshops快捷键
热门文章
- HBM|横河Yokogawa数据采集器自动计量校准软件NSAT-3070
- Timesten安装
- 万年历显示c语言百度文库,C语言万年历
- 解决django传递URL报错Specifying a namespace in include() without providing an app_name is not supported.
- 天极游戏2005年度回顾:电视游戏篇
- 计算机辅助园林设计考试题,计算机辅助园林规划设计之软件比较
- PS在园林计算机辅助设计中有哪些应用,风景园林计算机辅助设计(谷永丽)(第2版)...
- Python+OpenCV+PyQt5+多线程实现桌面监控程序
- EPUBBuilder编辑器新版
- wordpress炫酷主题Salient最新版13.0.5 汉化版免费下载