То, что я пытаюсь сказать здесь, это проблема, с которой я сталкиваюсь, чтобы повторно запустить мое приложение из того же состояния, в котором оно было оставлено ранее.Я провел много исследований и разработок по этому вопросу и прошел через вопросы, размещенные в stackoverflow. Поэтому, пожалуйста, не нужно говорить, что это дубликат.
Я попытался поместить эти параметры
objIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP|Intent.FLAG_ACTIVITY_SINGLE_TOP);
при запуске упражнения.Также я попробовал это,
objIntent.addFlags(Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
И, наконец, я попробовал этот метод также
objIntent.setAction(Intent.ACTION_MAIN);
objIntent.addCategory(Intent.CATEGORY_LAUNCHER);
Но ни один из них, кажется, не работает для меня.
Сценарий идет так, где это терпит неудачу.
Я запускаю свое приложение, перехожу к какому-либо действию, начиная с начального действия, скажем, от A до B
Теперь я нажму кнопку телефона на моем домашнем телефонеи выполнить некоторые действия, такие как нажатие на фотографию и т. д.
Снова пытаюсь запустить приложение с домашнего экрана.
Упс!Теперь мое приложение не сохранило свое состояние, оно запускается из исходного состояния.
Примечание:
Однако это не так во всехслучаи.иногда говорят, что примерно 1 или 2 раза из 10 или 15 раз он запускается из того же состояния, в котором он был ранее.
Еще одно сомнение, которое у меня есть, мне нужно установить это для всех намерений?Скажем, у меня есть более 10 позиций Intent, т. Е. Начало деятельности.Нужно ли добавлять этот кусок кода во все эти места?Я включил это для 2 или 3 случаев
Обновление:
Это работает в режиме отладки, но когда дело доходит доточка apk создать, это не удается.Однако, если я попытаюсь несколько раз, это даст мне требуемый результат, и после этого он будет вести себя так, как ожидалось.Я ломаю голову, чтобы понять, почему так происходит.
У кого-нибудь есть ответ на этот вопрос?