Это выглядит как ужасное решение, но ... из-за отсутствия нахождения флагов в манифесте, полагаю, вы правы. : '(

мый сценарий: у меня естьГлавный деятельность, которая запускаетИгра активность при нажатии кнопки. Если пользователь нажимает HOME, а затем снова запускает мое приложение, оно должно быть представлено сИгра активность, то, что он делал в последний раз при использовании приложения.

Однако вместо этого он получаетГлавный активность снова. У меня такое ощущение, что Android создаетеще один экземпляр MainActivity и добавление его в стек для этого приложения, вместо того, чтобы просто выбирать то, что было сверху, потому что если я нажму BACK после перезапуска приложения, я попаду в действие Game! И метод Main.onCreate вызывается каждый раз вместо вызова GameActivity.onResume.

мойAndroidManifest.xml в значительной степени «голые кости»:

<activity android:name="MainActivity" android:label="@string/app_name">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

<activity android:name="GameActivity" android:label="@string/app_name">
</activity>

Как видите, ничего особенного.

И вот как запускается новая деятельность, тоже очень простая:

Intent intent = new Intent(this, GameActivity.class);
startActivity(intent);

Теоретически это должно работать в Android просто «из коробки», поскольку ответ на очень похожий вопрос гласит:Поддержание стандартного состояния обратного стека активности приложения в Android (в режиме запуска singleTask), но это не так.

Я читал и перечитывал документацию по Activity, Task и Stacks и просматривал все связанные ответы в SO, но не могу понять, почему такая простая установка не совсем работает, как ожидалось.

Ответы на вопрос(6)

Ваш ответ на вопрос