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模式启动的。