Синхронный доступ к Firebase Cloud Firestore с помощью Swift - PullRequest
0 голосов
/ 01 марта 2019

ОК, я только начал исследовать Firebase.Скажем так, я хочу заполнить простую таблицу.Кажется, у меня есть доступ только к асинхронным методам для доступа к его локальному кешу?Это правильно?

Так что это означает, что мне нужно перезвонить, а затем заполнить свой собственный кэш в памяти, к которому, в свою очередь, затем могут обращаться методы делегата tableview?Итак, теперь у нас фактически есть два кэша с одинаковыми данными?Или я что-то здесь упускаю?

Ответы [ 2 ]

0 голосов
/ 01 марта 2019

Клиент Cloud Firestore хранит копию всех данных, которые вы слушаете, в памяти вашего приложения.После удаления последнего прослушивателя для местоположения данные удаляются из памяти.

Поскольку в Firestore по умолчанию включено автономное сохранение :

ДляAndroid и iOS, автономное сохранение включено по умолчанию.Чтобы отключить постоянство, установите для параметра PersistenceEnabled значение false.

Клиент также сохранит активные и последние данные на диск.

И чтобы ответить на ваши вопросы:

Кажется, у меня есть доступ только к асинхронным методам для доступа к его локальному кешу?

Да, верно.

Так что это означает, что яВам нужно перезвонить, а затем заполнить мой собственный кэш в памяти, к которому, в свою очередь, могут быть доступны методы делегата tableview?

Вы также правы.

Итак, теперь мыэффективно иметь два кэша с одинаковыми данными?

Пока слушатель активен, да, у вас будет два кэша.

0 голосов
/ 01 марта 2019

Кажется, у меня есть доступ только к асинхронным методам для доступа к его локальному кешу?

Да, вы правы.

Так что это означает, что янужно выполнить обратный вызов и затем заполнить мой собственный кэш в памяти, к которому, в свою очередь, могут затем обращаться методы делегирования таблицы?

Да

Итак, теперь у нас фактически есть два кэша:одни и те же данные?

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

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