Библиотека навигации Android Jetpack (состояние навигации нарушается при изменении конфигурации)Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Библиотека навигации Android Jetpack (состояние навигации нарушается при изменении конфигурации)

Сообщение Anonymous »

Я реализую архитектуру единого действия в собственном приложении Android Kotlin с CoreActivity, на котором размещен один хост навигации, который управляет навигацией приложения.
Я использую Jetpack Навигация для обработки состояния навигации с помощью основного файла навигационного графа для описания иерархии навигации.
https://developer.android.com/jetpack/a ... navigation
Проблема
При попытке навигации между двумя фрагментами (до изменения конфигурации) работает нормально.
Однако, если, скажем, ориентация изменится, менеджер фрагментов в библиотеке навигации просто откажется перемещаться и выведет следующее при работе с LogCat.

Код: Выделить всё

FragmentNavigator: Ignoring navigate() call: FragmentManager has already saved its state
ОБНОВЛЕНИЕ:
Итак, согласно ответу @Pratik Prakash Bindage, мне нужно запустить некоторую логику в onActivityResult, чтобы восстановить состояние навигации и предотвратить блокировку диспетчера фрагментов.< /p>
Проблема в том, что я не могу найти никакой документации или примера кода о том, как это сделать.
Может ли кто-нибудь опубликовать пример кода о том, как это сделать? это, если ты уже решил эту проблему? Спасибо.
И еще, зачем вызывать базовый код onActivityResult?
Я не перемещаюсь между действиями, я Перемещаюсь только между фрагментами на одном NavHost. Я никогда не переключаюсь между действиями, поэтому не совсем понимаю, зачем вызывать базовый код, который все равно вызывается средой выполнения.
Зачем переопределять метод, если у меня нет бизнес-логики для его запуска?
ДЛЯ ПРОСТО ДЛЯ ПОНЯТИЯ

Я использую классический Android (XML).
Я не использую Compose
ОБНОВЛЕНИЕ
Я нашел ответ. Оказывается, именно так работала моя навигационная система. Я имел в виду контекст активности (при запуске навигации), который больше не существовал после изменения конфигурации.
Затем, когда служба навигации вызывала функцию navigate, она вызывал активность, которой больше не существовало (поэтому менеджер фрагментов ничего не мог сделать).
Так что это была просто ошибка с моей стороны. На секунду я подумал, что это может быть ошибка в библиотеке Navigation Jetpack, но я хотел проверить здесь, прежде чем возникнет проблема в их git.
Все хорошо. Спасибо

Подробнее здесь: https://stackoverflow.com/questions/779 ... ration-cha
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»