Я пытаюсь протестировать свое приложение для Android, которое использует данные из Firebase Firestore. Однако у меня возникла проблема при запросе данных с помощью моего локального эмулятора Firebase Firestore и эмулятора Android.
Когда я запрашиваю данные с помощью эмулятора Android из Cloud Firestore, все работает нормально. Когда я запрашиваю данные из Emulator Firestore, я получаю пустой DataSnapshot.
Оба экземпляра Firestore (локальный эмулятор и облачный Firestore) содержат одни и те же данные.
Когда я ввожу 10.0.2.2.:4001 в браузере моего эмулятора Android, я перехожу в набор эмуляторов Firebase и вижу, что статус эмулятора Firestore включен. По моему мнению, это означает, что существует соединение с моим локально работающим эмулятором Firestore.
Мой код для запуска экземпляра Firestore:
private val db = Firebase.firestore
db.useEmulator("10.0.2.2", 8080)
db.firestoreSettings = firestoreSettings { isPersistenceEnabled = false }
val docVal = db.collection("district_codes")
.document("district_codes")
.get()
.await()
Журналы моего работающего локального эмулятора Firestore:
┌─────────────────────────────────────────────────────────────┐
│ ✔ All emulators ready! It is now safe to connect your app. │
│ i View Emulator UI at http://127.0.0.1:4001/ │
└─────────────────────────────────────────────────────────────┘
┌───────────┬────────────────┬─────────────────────────────────┐
│ Emulator │ Host:Port │ View in Emulator UI │
├───────────┼────────────────┼─────────────────────────────────┤
│ Firestore │ 127.0.0.1:8080 │ http://127.0.0.1:4001/firestore │
└───────────┴────────────────┴─────────────────────────────────┘
Emulator Hub running at 127.0.0.1:4401
Other reserved ports: 4501, 9150
Почему я не могу получить данные из локально работающего экземпляра Firebase Firestore, хотя извлечение данных из экземпляра Cloud Firestore работает правильно?
Обновить
Я пытаюсь протестировать его с помощью простой тестовой записи: в путь /Test/doc_test я добавил строковое поле с именем test_field.
Я получите его с помощью следующей команды:
val docVal = db.collection("Test").document("doc_test").get().await()
val foundValue = docVal.get("test_field") as String?
Log.i(TAG_FIRESTORE, "Found following test value: ${foundValue} - ${docVal}")
И получите следующую запись в журнале:
Found following test value: null - DocumentSnapshot{key=Test/doc_test, metadata=SnapshotMetadata{hasPendingWrites=false, isFromCache=false}, doc=null}
Подробнее здесь: https://stackoverflow.com/questions/792 ... r-but-work
Локальный эмулируемый Firestore возвращает пустой DataSnapshot в эмулятор Android, но работает с Cloud Firestore ⇐ Android
Форум для тех, кто программирует под Android
1734292058
Anonymous
Я пытаюсь протестировать свое приложение для Android, которое использует данные из Firebase Firestore. Однако у меня возникла проблема при запросе данных с помощью моего локального эмулятора Firebase Firestore и эмулятора Android.
Когда я запрашиваю данные с помощью эмулятора Android из Cloud Firestore, все работает нормально. Когда я запрашиваю данные из Emulator Firestore, я получаю пустой DataSnapshot.
Оба экземпляра Firestore (локальный эмулятор и облачный Firestore) содержат одни и те же данные.
Когда я ввожу 10.0.2.2.:4001 в браузере моего эмулятора Android, я перехожу в набор эмуляторов Firebase и вижу, что статус эмулятора Firestore включен. По моему мнению, это означает, что существует соединение с моим локально работающим эмулятором Firestore.
Мой код для запуска экземпляра Firestore:
private val db = Firebase.firestore
db.useEmulator("10.0.2.2", 8080)
db.firestoreSettings = firestoreSettings { isPersistenceEnabled = false }
val docVal = db.collection("district_codes")
.document("district_codes")
.get()
.await()
Журналы моего работающего локального эмулятора Firestore:
┌─────────────────────────────────────────────────────────────┐
│ ✔ All emulators ready! It is now safe to connect your app. │
│ i View Emulator UI at http://127.0.0.1:4001/ │
└─────────────────────────────────────────────────────────────┘
┌───────────┬────────────────┬─────────────────────────────────┐
│ Emulator │ Host:Port │ View in Emulator UI │
├───────────┼────────────────┼─────────────────────────────────┤
│ Firestore │ 127.0.0.1:8080 │ http://127.0.0.1:4001/firestore │
└───────────┴────────────────┴─────────────────────────────────┘
Emulator Hub running at 127.0.0.1:4401
Other reserved ports: 4501, 9150
Почему я не могу получить данные из локально работающего экземпляра Firebase Firestore, хотя извлечение данных из экземпляра Cloud Firestore работает правильно?
[b]Обновить[/b]
Я пытаюсь протестировать его с помощью простой тестовой записи: в путь /Test/doc_test я добавил строковое поле с именем test_field.
Я получите его с помощью следующей команды:
val docVal = db.collection("Test").document("doc_test").get().await()
val foundValue = docVal.get("test_field") as String?
Log.i(TAG_FIRESTORE, "Found following test value: ${foundValue} - ${docVal}")
И получите следующую запись в журнале:
Found following test value: null - DocumentSnapshot{key=Test/doc_test, metadata=SnapshotMetadata{hasPendingWrites=false, isFromCache=false}, doc=null}
Подробнее здесь: [url]https://stackoverflow.com/questions/79282104/local-emulated-firestore-returns-empty-datasnapshot-to-android-emulator-but-work[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия