Изучение

Runtime, жизненный цикл и восстановление

Одна Session на Flutter View, восстановление состояния и обновление общего Graph без потери активных Entry.

v0.1.0-dev.2Продвинутый уровень

Runtime, жизненный цикл и восстановление

Создавайте одну NavigationSession для одного Flutter View и закрывайте её вместе с этим представлением. Несколько окон могут использовать общий неизменяемый Graph через NavigationRuntime, но каждая Session сохраняет собственные стек, историю и сведения о текущем Route.

Восстанавливаемому Route нужен двунаправленный URI-кодек. NavigationRestorationPolicy.sessionOnly предназначен только для локальных значений процесса, которые нельзя восстановить после перезапуска. В обычном Destination лучше хранить стабильный ID, а актуальную сущность получать через прикладные сервисы.

NavigationRuntime.updateGraph транзакционно изменяет общее определение. Для Entry, потерявших Route, вызывающий код выбирает стратегию:

  • отклонить обновление;
  • удалить потерявшие определение Entry;
  • перенести каждый Entry в совместимый типизированный Target.

Миграция сохраняет жизненный цикл Entry и его Ticket, поэтому тип результата нового Route обязан совпадать.

Отдельные изоляты Flutter Engine не могут совместно использовать объекты. NavigationSessionBridge задаёт сериализуемую границу конфигурации; транспорт, аутентификация, порядок и повторные попытки остаются ответственностью приложения.

ARKTELOS

Инженерные системы для программного обеспечения, которое обязано выдерживать нагрузку.