在API 31中,FLAG_ACTIVITY_NEW_TASK的行为发生了变化。现在,如果您尝试使用此标志来启动您的应用的活动,则不会启动新任务,而是选择现有任务,并在其顶部启动您的活动。
如果您确实要启动一个新任务,请尝试使用FLAG_ACTIVITY_MULTIPLE_TASK。这将确保您的活动启动一个新任务,而不是连接到现有任务。
以下是使用FLAG_ACTIVITY_MULTIPLE_TASK启动活动的示例代码:
Intent intent = new Intent(this, MyActivity.class); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_MULTIPLE_TASK); startActivity(intent);