日常填坑。

做了什么操作引起的?如下:

在活动A 启动模式设置为singleTask ,然后再用活动A启动活动B,活动B启动活动C。 现在我的活动C要使用intent携带值去启动活动A。在活动A中正常的操作去获取值,会发现intent中没有任何值。

为什么会这样呢?如下:

因为活动A里的intent是旧的,之前活动A启动就已经保留的intent。如果这个时候用getIntent方法是无法获取活动C携带值的Intent。

如何解决?如下:

我们需要更新活动A里的intent,把原先的intent重新覆盖活动C传过来的intent。

具体操作:

    @Override
protected void onNewIntent(Intent intent) {
Log.e(TAG, "onNewIntent被调用");
super.onNewIntent(intent);
setIntent(intent);
}

在活动A里重写一个onNewIntent方法,让活动A在恢复活动的时候更新到最新的intent。

android 开发 singleTask启动模式下传值的坑的更多相关文章

  1. Android开发——Activity启动模式详解

    1. Activity的启动模式 本文原创,转载请注明出处:http://blog.csdn.net/seu_calvin/article/details/52054893 1.1 Standard标 ...

  2. Android开发之启动模式的深入理解

    standard(标准模式): 当用ApplicationContext去启动standard模式时会报错,是因为非Activity类型的Context没有所谓的任务栈, 所以需要为待启动的Activ ...

  3. Android DevArt3:SingleTask启动模式探究:首先从MainActivity启动案例入口AActivity,并在A中启动BActivity,从B启动CActivity, 再从C中又启动AActivity, 最后在A中启动B,现在按两次back键,然后回到的是哪个Activity? 答案是,回到MainActivity。

    SingleTask启动模式探究 GitHub如题:首先从MainActivity启动案例入口AActivity,并在A中启动BActivity,从B启动CActivity,再从C中又启动AActiv ...

  4. android Activity的启动模式

    Android中Activity启动模式详解   在Android中每个界面都是一个Activity,切换界面操作其实是多个不同Activity之间的实例化操作.在Android中Activity的启 ...

  5. UEFI启动模式下安装Ubuntu 16.04教程【转】

    本文转载自:http://blog.csdn.net/Jesse_Mx/article/details/61425361 前言 最近常帮人安装Ubuntu,也算积累了一些经验.这篇博文主要谈一谈如何在 ...

  6. Android中的启动模式(下)

    在这篇文章中,我会继续跟大家分享有关于Android中启动模式的相关知识.当然,如果对这个启动模式还不完全了解或者没有听过的话,可以先看看我之前写的有关于这个知识点的入门篇Android的启动模式(上 ...

  7. Android中Activity启动模式详解

    在Android中每个界面都是一个Activity,切换界面操作其实是多个不同Activity之间的实例化操作.在Android中Activity的启动模式决定了Activity的启动运行方式. An ...

  8. Android启动模式之singleinstance的坑

    前言 在实际应用中,使用singleinstance启动模式时,会遇到一些奇奇怪怪的问题.Android有四种启动模式,分别是standard,singleTop,singleTask,singleI ...

  9. Android活动的启动模式

    1. standard 标准模式,是活动默认的启动模式,在不进行显示指定的情况下,所有活动都会自动使用这种模式. Android使用返回栈管理活动,在standard模式下,每当启动一个新的活动,它就 ...

随机推荐

  1. Go并发控制--context的使用

    并发控制 Cancel Example 通过使用WithCancel可以取消一个或多个goroutine的执行,以实现对并发的控制. package main import ( "conte ...

  2. java类加载与static

    一.类加载 当jvm去运行一个类时,会先加载该类,把该类在硬盘上字节码加载到jvm的内存.java HelloWorld>字节码会被加载到代码段中>加载过程中会有一些静态的常量,这部分会事 ...

  3. 【转】Linux安装HDF5及遇到的问题总结

    Linux安装HDF5及遇到的问题总结 转自: http://www.linuxdiyf.com/linux/26164.html   ubuntu版本:16.04.2 64位 从HDF官网(http ...

  4. 2017.11.13 flex 布局相关问题

    一.今日任务:城市体验平台小程序的开发(由于数据还未完善,今天主要是 UI 布局的开发) 二.所遇问题 1. flex 布局问题: html: <view class="flex-sp ...

  5. py2exe 打包的两种方式

    cmd模式 #!/usr/bin/python #-*- coding: UTF-8 -*- from distutils.core import setup import py2exe setup( ...

  6. windows服务命令 转载

    OnCustomCommand executes when the Service Control Manager (SCM) passes a custom command to the servi ...

  7. python--BUG--python socket.error: [Errno 9] Bad file descriptor的解决办法

    这个错误很明显 ,是因为关闭了套接字对象后,又再次去调用了套接字对象,此时套接字链接已经被关闭,不能再去调用,所以才会出现这种错误,复查一下代码,很快就可以解决.

  8. python 引用计数

    转载:NeilLee(有修改)   一.概述 要保持追踪内存中的对象,Python使用了引用计数这一简单的技术. sys.getrefcount(a)可以查看a对象的引用计数,但是比正常计数大1,因为 ...

  9. Android开发之内部类篇

    内部类: 1.内部类的第一个好处,隐藏你不想让别人知道的操作,也即封装性. 2.非静态内部类对象有着指向其外部类对象的引用 等等. 创建项目: 1.File---->New----->ja ...

  10. django获取表单数据

    django获取单表数据的三种方式 v1 = models.Business.objects.all() # v1是QuerySet的列表 ,内部元素都是对象 v2 = models.Business ...