#android #back-stack
#Android #обратный стек
Вопрос:
У меня есть приложение, в котором я сталкиваюсь с этой проблемой. Это точечная версия сценария.
У меня есть 2 действия A и B. Оба заданы singleTask
. Всякий раз, когда вы создаете экземпляр singleTask
действия, для него создается новая задача.
Итак, если я это сделаю A -> B -> A
, onDestroy()
вызывается действие B, но, согласно документации, оно должно создать только один экземпляр для singleTask
and SingleInstance
, тогда зачем вызывать onDestroy()
?
Теперь у меня есть два вопроса
- Являются ли действия A и B для двух отдельных задач или внутри одной задачи?
- Я хочу позвонить
A -> B -> A
и избежатьonDestroy()
вызова действия B. Возможно ли это?
Ответ №1:
После долгих исследований я сам нашел ответ
Являются ли действия A и B для двух отдельных задач или внутри одной задачи?
Да, действие A и действие B относятся к двум разным задачам.
Я хочу вызвать A -> B -> A и избежать вызова onDestroy() действия B. Возможно ли это?
Да, это возможно. Вызывая finish()
действие A во время перехода к действию B, этого можно достичь.
Примечание: хотя вызов finish()
не является хорошим вариантом, это просто обходной путь, который подходит для моего сценария.