Firestore сохраняет данные локально на устройстве, но не отправляет их в консоль Firebase.Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Firestore сохраняет данные локально на устройстве, но не отправляет их в консоль Firebase.

Сообщение Anonymous »

Я работаю над приложением Flutter, в котором хочу сохранять записи в Firebase Firestore в отдельной пользовательской подколлекции. Кажется, что данные успешно добавлены на устройство, но они никогда не появляются в консоли Firestore. Вместо этого похоже, что данные кэшируются только локально на устройстве, и в журналах я постоянно вижу следующее сообщение:

Код: Выделить всё

[WatchStream]: (be43146) Stream closed with status: Status{code=NOT_FOUND, description=The database (default) does not exist for project 
 Please visit https://console.cloud.google.com/datastore/setup?project= to add a Cloud Datastore or Cloud Firestore database. , cause=null}.
Вот что я пробовал:
  • Настройка базы данных Firestore: я настроил Firestore в своей консоли Firebase и подтвердил, что использую правильные файлы конфигурации проекта (

    Код: Выделить всё

    google-services.json
    для Android).
  • Инициализация Firebase: Firebase успешно инициализируется в моем приложении с помощью Firebase.initializeApp().
  • Разрешения и правила: я проверил правила Firestore, и в настоящее время они разрешают операции чтения и записи для аутентифицированных пользователей:

Код: Выделить всё

service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if request.auth != null;
}
}
}
Вот функция, которую я использую для добавления данных в Firestore:

Код: Выделить всё

void addUrl() async {
if (urlController.text.isNotEmpty) {
final currentUser = auth.currentUser;

if (currentUser != null) {
await firestore
.collection('users')
.doc(currentUser.uid)
.collection('urls')
.add({
'url': urlController.text,
'timestamp': FieldValue.serverTimestamp(),
});

// Clear the text field after adding to Firestore
urlController.clear();
} else {
developer.log("User is not signed in");
}
}
}
Несмотря на успешный вызов этой функции и очистку текстового поля, данные кэшируются только локально на устройстве. Консоль Firestore остается пустой.

Подробнее здесь: https://stackoverflow.com/questions/791 ... se-console
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»