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?
报这个错是因为我在application里启动standard模式的Activity导致的。原因是:非Activity类型的Context(如ApplicationContext)并没有所谓的任务栈。而new 出的实例(Activity)是需要入栈的。补充下:一个任务栈可以有多个实例,一个实例也可以属于不同的任务栈。
解决方法:为带启动的Activity指定FLAG_ACTIVITY_NEW_TASK标记位,这样启动的时候就会为它创建一个新的任务栈,这个时候带启动的Activity实际上是以singleTask模式启动的。
本文解释了在Android应用中从Application上下文启动Activity时遇到的AndroidRuntimeException错误,并提供了通过添加FLAG_ACTIVITY_NEW_TASK标志来解决该问题的方法。
2049

被折叠的 条评论
为什么被折叠?



