Android Service启动Activity发生异常

在Service里面调用startActivity的话,如果不添加FLAG_ACTIVITY_NEW_TASK 的flag,则会报如下异常:

android.util.AndroidRuntimeException:Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?

所以在在Service里面启动Activity的话,必须添加FLAG_ACTIVITY_NEW_TASK flag,如下所示:

private void start(Context context) {
    Intent intent = new Intent(context, MainActivity.class);
    intent.addFlags(android.content.Intent.FLAG_ACTIVITY_NEW_TASK);
    startActivity(intent);
}

发表回复

后才能评论