关于运行时异常:Calling startActivity() from outside of an Activity

当我们在Adapter或者其他地方(如Service、BroadCastReceiver、Widget等)中使用startActivity(),会报一个异常:                               android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity  context requires the  FLAG_ACTIVITY_NEW_TASK flag.

解决办法:这时需要为Intent设置一个Flag:FLAG_ACTIVITY_NEW_TASK

具体操作:Intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 这样就不会报错了,可以顺利的startActivity()。

在Activity中使用startActivity()的方法不会有任何限制,是因为Activity重载了Context的startActivity()方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值