Я уже знаю, что могу передавать Bundled-данные через setResult из одного действия в другое.Однако предположим, что у меня есть глобальное действие, которое можно запустить из любого места в моем приложении, поскольку оно сопоставлено с кнопкой, которая отображается в строке заголовка почти во всех моих действиях.
Короче говоря, после того, как он завершит свой управляемый пользователем процесс, я хочу, чтобы он возвратил сигнал к самому первому действию в заднем стеке, в основном к моему домашнему действию, чтобы соответствующим образом обновлять пользовательский интерфейс.
Часть проблемы заключается в том, что, если я использую BroadcastReceiver, он не регистрируется, когда моя деятельность находится в фоновом режиме, и он не получит сигнал для обновления своего набора данных.
Что я хочудостичь следующего:
Из Домашнего (ActivityA) или любого другого действия (Activity B, C и т. д.), который может открыть мою глобальную активность (ActivityX), он должен найти способперезвонить в ActivityA, не выводя его на передний план.
Должен ли я использовать FLAG_ACTIVITY_FORWARD_RESULT и, если да, то как мне смоделировать его из моих последующих действий после Home.Другими словами, если я запускаю дочернее действие из Home, должен ли я запускать его с помощью startActivityForResult с любым кодом запроса, который я определяю, а затем передавать FLAG_ACTIVITY_FORWARD_RESULT при открытии моего глобального действия, чтобы оттуда был установлен результат?
Кроме того, предположим, что я запускаю дочернее действие из дома с результатом, а затем из своего дочернего действия я добавляю больше в стек, из которого я открываю ActivityX.Будет ли система все еще помнить цепочку результатов, пока я открываю первого потомка из Home с результатом?
РЕДАКТИРОВАТЬ: Я не хочу просто сразу очистить весь стек обратно домой.после завершения процесса в ActivityX;просто способ сообщить об активности Home, чтобы обновить ее интерфейс, когда пользователь в конечном итоге возвращается на главный экран.Я предполагаю, вероятно, установление флага SharedPreference, который Home проверяет в onStart, когда пользователь переориентируется на это действие, что, в свою очередь, дает мне условие для выполнения конечного результата, после чего флаг сбрасывается.