很多人使用startActivity时候,会碰到如下的异常:
Caused by: android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
我曾经也遇到过,不过后来研究了一下之后,明白了原理,记下来,以为碰到同样困扰的兄弟们解惑。
都知道,Context中有一个startActivity方法,Activity继承自Context,重载了startActivity方法。如果使用Activity的startActivity方法,不会有任何限制,而如果使用Context的startActivity方法的话,就需要开启一个新的task,遇到上面那个异常的,都是因为使用了Context的startActivity方法。解决办法是,加一个flag。
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
这样就可以再新的task里面启动这个Activity了。
分享到:
相关推荐
W/System.err: android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want? W/System.err: at...
`find-requires`通过eSprima解析AST,能够深入到代码的结构内部,找出所有的`require()`调用,即使它们被嵌套在复杂的逻辑中。 在实际开发中,`find-requires`可以集成到构建流程中,例如与Gulp或Webpack等构建工具...
在Android开发中,`import android.support.annotation.RequiresApi`是一个经常使用的注解,它用于标记一个方法或类,表明这个元素只能在特定版本的Android API级别及以上才能被使用。`v7包`是Android Support ...
然而,当在Ant脚本中使用`<import>`标签引入其他构建文件时,可能会遇到"import requires support in ProjectHelper"的异常。这个问题通常是由于Ant版本不支持或者配置不当所引起的。下面将详细探讨这个问题的原因及...
如果我们想让 AOP 代理捕获异常,那么我们需要在方法中重新抛出异常,或者在 catch 语句中最后增加 throw new RuntimeException() 语句。 Spring 事务机制 在 Spring 中,事务机制是通过 TransactionManager 来...
MySql5.7.20安装过程中报错 This application requires Visual Studio 2013 Redistributable. Please install the Redistributable then run this installer again. 的解决办法.报错如下: 1: Action 10:59:21: ...
安装 mysql5.7时提示:This application requires Visual Studio 2013 Redistributable. Please install the Redistributable then run this installer again. 需要安装指定版本的Microsoft Visual C++ ...
解决mysql 5.7.x 安装报错 This application requires Visual Studio 2013 Redistributable 将压缩包解压,先安装vcredist_x64后尝试重新安装mysql 5.7.x ,假如依然报错,然后安装vcredist_x86后再次安装mysql 问题...
error: #error "Qt requires C++11 support c++0x, c++11的解决办法 如果你是用makefile编译还好解决些,但是如果你是用CMake编译,你还得变成CMake的写法. 不过低层原理都一样,都是在g++上作文章. 我来告诉你makefile...
2、Propagation.REQUIRES_NEW 无论何时自身都会开启事务 3、Propagation.SUPPORTS 自身不会开启事务,在事务范围内则使用相同事务,否则不使用事务 4、Propagation.NOT_SUPPORTED 自身不会开启事务,...
### 关于Android Studio升级至V4.1.1后Activity无法创建的问题及解决方案 #### 一、问题背景 在将Android Studio更新到版本4.1.1后,开发者可能会遇到无法正常创建Activity的问题。该问题可能由多种因素引起,包括...
在Android开发过程中,开发者经常会遇到各种版本兼容性问题,其中之一就是标题所提到的"Android SDK requires Android Developer Toolkit version 22.0.0 or above"。这个问题通常发生在尝试使用Eclipse IDE集成...
标题“emulator: ERROR: x86 emulation currently requires hardware acceleration!”是Android开发中常见的一个错误信息,当尝试在没有硬件加速支持的环境中运行Android Emulator时会出现。这个错误提示意味着你...
This paper describes the basic processing model and architecture of Aurora, a new system to manage data streams for monitoring applications. Monitoring applications differ substantially from ...
在下载并解压"apache-jmeter-5.1.1(Requires Java 8+)"后,你需要确保你的系统已经安装了Java 8或更高的版本。运行JMeter时,只需找到解压后的目录中的`bin`文件夹,双击`jmeter.bat`(Windows)或`jmeter.sh`...
vcredist MySql 安装报错 错误信息:This application requires Visual Studio 2013 Redistributable. Please install the Redistributable then run this installer again 下载文件,安装64位,不行再安装32位
在使用Eclipse或Spring Tool Suite (STS)进行Java开发时,可能会遇到一个常见的问题:“The Maven Integration requires that Eclipse be running in a JDK”。这通常发生在Eclipse没有正确识别到系统中的Java ...
Apache JMeter 5.4.3 Requires Java 8+
在PyTorch中,`requires_grad`属性是一个关键特性,用于控制张量的梯度计算。当`requires_grad=True`时,PyTorch会在执行反向传播时计算该张量的梯度,这对于训练神经网络至关重要。在训练过程中,有时我们可能需要...