2015-04-18 5 views
2

Я использую parse для приложения чата в android для хранения данных, которые я использую как на сервере, так и на локальной базе данных (Parse.enableLocalDatastore()), он работает нормально, проблема заключается в извлечении данных из базы данных, например, если сеть не доступный данные вернутся из локальной базы данных, и если он будет доступен, он будет возвращаться непосредственно из разбора, чтобы как можно отличить их? Должен ли я использовать метод query.fromLocalDatastore() во время запроса данных или нет?Как синхронизировать между локальной базой данных и Parse in android?

ответ

1

Вам нужно будет создать 2 разных запроса, один для локальных данных и один для сетевых данных, а затем выяснить, какой из них вы хотите отображать на экране.

Есть несколько сценариев, которые вы должны учитывать:

  1. стороне сервера удаления, добавления и обновления
  2. стороне клиента удаление, добавление и обновление

Не все из них нужно учитываются только те, которые имеют смысл для вашей заявки.

Имейте в виду, что, когда объект возлагали (и не сохраняются на сервере), он не имеет objectId, но у него есть то, что называется localId (это частный апи, но вы можете увидеть его в отладчике) , Вы можете проверить наличие objectId, чтобы определить, был ли объект создан локально и никогда не был сохранен на сервере.

Смежные вопросы