Flutter / Dart / Firebase - Уменьшите ненужную загрузку данных - PullRequest
0 голосов
/ 23 апреля 2020

Я попытался найти свою конкретную проблему c, но не смог найти подходящего решения. Я хотел бы заранее поблагодарить всех за вашу помощь.

В настоящее время я занимаюсь разработкой приложения iOS. Приложение представляет профиль пользователя, который может быть обновлен пользователем. Все, от аутентификации, регистрации и возможности обновления ваших пользовательских данных, прекрасно работает с помощью Firebase. Теперь я хотел бы оптимизировать некоторый код. Таким образом, приложение имеет 2 экрана: HomeScreen и EditScreen. (Помимо экранов, необходимых для регистрации и входа в систему).

Короче говоря, мой вопрос: Как я могу уменьшить объем данных, загружаемых из firebase?

Пример: 1. Пользователь находится на домашнем экране, чтобы создать представление, загружающее его изображение из хранилища Firebase 2. Он хочет отредактировать свое изображение и поэтому переключается на экран редактирования, где его изображение будет загружено снова 3. После изменения его изображения, новое изображение будет загружено в Firebase Storage, и он сможет увидеть свое новое изображение на Editscreen 4. Если он теперь переключится обратно на HomeScreen, его новое изображение будет снова загружено из Firebase

Is Есть хороший способ уменьшить объем загрузки? Как кэширование изображения между шагами 1 и 2? Как всегда есть небольшая задержка в отображении своего изображения.

Спасибо! К сожалению, мне не разрешено делиться каким-либо кодом.

1 Ответ

0 голосов
/ 23 апреля 2020

Вы можете проверить пакет flutter_advanced_networkimage . Он будет кэшировать вашу фотографию при загрузке. Для всего остального вы должны просто переместить ваш profile объект (или что-то еще, что вызывает информацию пользователя firebase) над этими маршрутами и передать его через дерево виджетов через аргументы или управление состоянием.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...