Хочу задать вопрос по поводу Firebase, а именно сохранение данных в БД Firebase. Насколько я понимаю: что как только данные сохраняются в БД Firebase, то они сразу отправляются на сервер и Firebase обновляет данные на всех устройствах, у которых установлено данное приложение. Что происходит, когда пользователь находится оффлайн, все данные пропадают? и юзер не может больше пользоваться приложением? Как решаются конфликты? Например, пользователем на одном устройстве удалил какие-то данные будучи оффлайн, а другой пользователь вносил изменение в эти данные.
Ответ
Как только обновляются данные в FireBase (и если вы использовали ValueEventListener), то у пользователя, который в этот момент работает в приложении произойдет обновление и он это увидит. Когда пользователь находится в оффлайн, все данные продолжают сохраняться в Firebase (только пользователь об этом не знает). Пользователь может по прежнему пользоваться приложением даже в оффлайн, как сказано в документации. Если кто-то внес изменения в базу, то изменения произойдут сразу, а кто подключится из оффлайн, то есть станет онлайн, найдет нужную ветку и уже удалит эти данные. Так что другие пользователи не увидят ветку с этими данными из базы. П.С. что же у вас за данные, что пользователь их может удалить, а другой может их при этом менять? Может лучше сделать их личными - кто захотел удалил, поменял. А основные данные сделать доступными только для чтения большинству.
Комментариев нет:
Отправить комментарий