Java 在两个正在运行的活动之间传递数据

Java 在两个正在运行的活动之间传递数据,java,android,android-intent,Java,Android,Android Intent,我需要将数据从一个活动传递到另一个活动。第一次,没有问题,因为创建了一个新的意图。我的问题是,我使用标志\u ACTIVITY\u REORDER\u TO\u FRONT,因为我不想破坏活动,因为我不想每次切换活动时都进入onCreate。我的问题是,如何从两个正在运行的活动传递数组 我正在android studio中创建一个类似于Yatzy的游戏。在一个活动中,你掷骰子,在另一个活动中,你在记分板上设定分数。每次玩家被导航到记分板时,都会显示所有可能的结果,除了已经选择的结果(在这些地方你

我需要将数据从一个活动传递到另一个活动。第一次,没有问题,因为创建了一个新的意图。我的问题是,我使用标志\u ACTIVITY\u REORDER\u TO\u FRONT,因为我不想破坏活动,因为我不想每次切换活动时都进入onCreate。我的问题是,如何从两个正在运行的活动传递数组

我正在android studio中创建一个类似于Yatzy的游戏。在一个活动中,你掷骰子,在另一个活动中,你在记分板上设定分数。每次玩家被导航到记分板时,都会显示所有可能的结果,除了已经选择的结果(在这些地方你可以看到选择的结果),然后玩家可以选择一个分数,例如“满座”。当我在两个活动之间导航时,我不想破坏它们,因为它们包含我不想重置的信息。因此,我使用FLAG_ACTIVITY_REORDER_TO_FRONT,但是当我使用它时,不会显示新的骰子组合,它只显示第一个骰子组合

以下是我从MainActivity传递数据的时间:

Intent openMainActivity= new Intent(MainActivity.this, ScoreboardActivity.class);
openMainActivity.putExtra("scoreList", game.showScoreAlt());
openMainActivity.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT));
startActivity(openMainActivity)
以下是我在其他活动中收到数据的时间:

Bundle extras = getIntent().getExtras();
scoreList = extras.getIntArray("scoreList");

您可以尝试此活动。onNewIntent()方法

@Override
protected void onNewIntent(Intent intent) {
    super.onNewIntent(intent);
    setIntent(intent);
}

.

在运行的活动之间传递数据是什么意思?您提供的代码应该可以正常工作。
当我在两个活动之间导航时,我不想销毁它们,因为它们包含我不想重置的信息
使用onSavedInstance将数据临时存储到磁盘,以防在用户RAM不足时销毁活动。请注意,不可能防止活动被破坏。您的应用程序最终将从RAM中删除。不过,您可以保留数据并在以后恢复。太好了,请接受答案,这样也可以帮助其他人