Вступить в клуб →
средняявопросСеть и хранение данных

Лента должна открываться без интернета: как правильно устроить хранение

Сейчас экран ленты работает так: при открытии идёт запрос в API, при ошибке сети показывается заглушка «нет интернета».

Задача от продакта: лента должна открываться и в офлайне, показывая последние загруженные данные, а при появлении сети — обновляться.

Какое решение соответствует задаче?

  • Держать последний ответ в статическом поле, живущем всё время работы процесса — этого достаточно для офлайна
  • Включить кеширование на уровне HTTP-клиента и считать задачу закрытой — офлайн заработает сам, клиент отдаст последний ответ из кеша
  • Складывать JSON-ответы целиком в настройки приложения и парсить их при каждом открытии экрана
  • Сохранять ответы в локальную базу и всегда отрисовывать экран из неё, а сеть считать фоновой синхронизацией, которая обновляет базу

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

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

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

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