Данные не попадают в базу данных Firebase, если пользователь проводит опрос в автономном режиме и убивает приложение, не выходя в сеть с использованием response-native-firebase. - PullRequest
0 голосов
/ 10 октября 2019

сценарий 1:

  1. открыть приложение
  2. Перейти в автономный режим
  3. выполнить опрос
  4. убедиться, что приложение не убито и выходить в сеть
  5. Данные отправляются в базу данных, как только пользователь выходит в сеть

Сценарий 2:

  1. открыть приложение
  2. Перейти в автономный режим
  3. выполнить опрос
  4. Убить приложение из фона
  5. Открыть приложение и выйти в онлайн, данные должны быть отправлены в базу данных для опросов, которые мы провели в автономном режиме --- ВотФактическая проблема, с которой я сталкиваюсь, в этом сценарии данные не переносятся в базу данных Firebase.

Ответы [ 2 ]

0 голосов
/ 23 октября 2019

Просто сделайте следующее:

export const syncOfflineDataToFirestore = async () => {
  const docRef = await firebase
    .firestore()
    .collection('singledoc-per-device')
    .doc(`doc_name`)
  await docRef.get()
}

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

0 голосов
/ 10 октября 2019

Чтобы сценарий 2 сработал, клиент Firebase должен будет записать данные на локальный диск, если нет соединения с сервером (это называется сохранением диска в клиентах Firebase). Затем, когда приложение перезапускается, оно считывает данные с диска и может повторить попытку отправки их на сервер.

Поскольку сценарий 2 не работает для вас, похоже, что сохранение диска не включено. Вы не указываете / не показываете, какую базу данных Firebase (Firestore или Realtime Database) вы используете. Но так как постоянство диска включено по умолчанию в Firestore, я собираюсь предположить, что это База данных в реальном времени. Чтобы узнать, как включить сохранение диска, см. https://invertase.io/oss/react-native-firebase/faqs/enabling-database-persistence

...