Прежде чем понизить голосование и пометить его как дубликат , подумайте о моих страданиях. Я уже читал эту ветку SO Разница между singleTask и singleInstance и думал, что все понял, но потом наткнулся на эту статью среднего уровня , которая добавила новый элемент путаницы. В разделе «Ответы» в потоке SO говорится, что всякий раз, когда запускается новый Activity
с «singleTask» в качестве режима запуска, он запускается в новой задаче в качестве корневого действия и далее позволяет другим Activity
бытьдобавил в свою новую задачу.
Так, например,
Предыдущий стек: ЗАДАЧА 1 -> [A -> B]
Операция: запуск нового Activity
C из B с launchMode = "singleTask"
Новый стек: TASK 1 -> [A -> B] TASK 2 -> [C]
Но в разделе "singleTask" статьи Medium новый Activity
C при запуске добавляется к тому же предыдущемустек,
Что здесь произошло, я упустил какую-то важную концепцию?
Кроме того, я бы попросил о возможном визуальном представлении новой задачи при запуске операции "singleTask" и "singleInstance" используются в следующих сценариях:
Сценарий 1: Предыдущая задача: [A ->B] Новый Activity
C запускается с launchMode = "singleTask" из B Новый Activity
C запускается с launchMode = "singleInstance" из B Ожидаемое новое задание:?
Сценарий 2: Предыдущее задание: [A -> B -> C] Новое Activity
C запускается с launchMode = "singleTask" из C Новый Activity
C запускается с launchMode = "singleInstance" из C Ожидаемое новое задание:?
Сценарий 3: Предыдущая задача: [A -> B -> C -> D -> E] Новое Activity
C запускается с launchMode = "singleTask" из E Новое Activity
C запускается с launchMode = "singleInstance" из E Ожидаемое новое задание:?