Приложение Android Run от последней активности

У меня есть приложение с несколькими действиями. У моей A-активности есть параметры фильтра Manifest Intent: action.MAIN и category.LAUNCHER. После его загрузки я вызываю Activity B и заканчиваю () A, так как я больше не использую его.

После запуска моего приложения перейдите из Activity A в B и нажмите кнопку «Домой», когда я перезапустил его из меню приложений или из приложения Market (например, не нажав кнопку «Домой»), он начинается с Действия и не сохраняют его последнее действие B.

Я определенно знаю, что это возможно, чтобы перезапустить приложение из его последнего Действия (какое-то приложение из Market его поддерживает), и я думаю, что это можно определить с помощью параметров манифеста, но я не знаю, какой из них.

Кто-нибудь знает, как реализовать его, чтобы мое приложение могло возобновиться с его последнего действия B?

Спасибо ayanir

Solutions Collecting From Web of "Приложение Android Run от последней активности"

Хотя я знаю, что это старый вопрос, я боролся с этой самой проблемой и не мог найти ответ на SO. Итак, вот мой (очень новичок) ответ:

Нет, я не думаю, что это можно сделать, возившись с манифестом – вы можете запускать только одну фиксированную активность для каждого приложения с главного экрана. Однако, что вы можете сделать, это запуск любой активности, которую вы хотите от этой начальной точки, и Android может сделать это достаточно быстро, чтобы вы никогда не видели первый.

Хотя это очень похоже на хак, я реализовал эту маршрутизацию в методе onResume () для начальной активности и использовал sharedPreferences для отслеживания запуска какой-либо деятельности:

final Class<? extends Activity> activityClass; SharedPreferences prefs = getSharedPreferences("sharedPrefs", MODE_PRIVATE); int activityID = prefs.getInt("whichActivity", -1); if (activityID == Constants.ACTIVITY_ID_MAINSCREEN) { activityClass = MainScreen.class; } else { activityClass = null; return; } Intent newActivity = new Intent(this, activityClass); this.startActivity(newActivity); 

В последнее время появилось несколько очень похожих вопросов. Это хорошая идея, чтобы сначала искать сайт, чтобы не задавать повторяющиеся вопросы.

Например, приведенный ниже вопрос говорит о том, что такое поведение происходило, потому что разработчик запускал свое приложение с помощью отладчика Eclipse. У другого человека была эта проблема, потому что они запускали приложение непосредственно из Eclipse, вместо того, чтобы начать чисто, вручную нажав значок запуска.

Android: сохранить стек активности задачи после перезагрузки из HOME

Поэтому есть несколько вещей, которые следует учитывать при разработке приложений на Android. И одна из больших вещей – приложение Lifecyle, если вы еще не сделали этого, я бы предложил это видео . Случается, что приложение может быть убито и сброшено в любой момент времени, и вам нужно сохранить состояние своего приложения, чтобы вы могли его восстановить в любое время. Если вы откроете приложение из Launcher, вы всегда будете входить в Activity, который запускает приложение, если вы хотите перейти к следующему действию, вам нужно сохранить эту информацию, а затем перейти к Activity в вашем коде.
Также ознакомьтесь с этой документацией о SavingPersistentState