Вступить в клуб →
сложнаявопросПлатформы и жизненный цикл приложения

Форма пустая после долгого пребывания приложения в фоне, хотя минуту назад всё сохранялось

Тестировщик оформил баг: заполнил длинную форму заявки, свернул приложение, поработал в других приложениях полчаса и вернулся. Приложение открылось с первого экрана, форма пустая.

При проверке выясняется: если свернуть приложение на минуту и сразу вернуться, всё на месте. Состояние формы хранится во ViewModel экрана.

Какое объяснение и решение верны?

  • Нужно перенести состояние формы в синглтон уровня приложения — он живёт дольше, чем ViewModel экрана
  • Это известная особенность прошивок конкретного производителя устройств: на других вендорах сценарий не воспроизводится, чинить на стороне приложения нечего
  • Процесс приложения был выгружен системой, при возврате оно стартовало заново: состояние в памяти этого не переживает, черновик надо сохранять в хранилище
  • Нужно удерживать процесс от выгрузки, подняв приоритет через фоновый сервис на время заполнения формы, — тогда система не тронет приложение в фоне

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела