【问题标题】:Why can't I send the data to the cloud firestore?为什么我不能将数据发送到 Cloud Firestore?
【发布时间】:2020-04-26 18:17:19
【问题描述】:

我正在执行以下过程:

  1. 从 Cloud Firestore 中获取数据
  2. 使用地理定位器中的数据地址查找经纬度
  3. 使用之前创建一个新的 Cloud Firestore 集合 数据加上经纬度。

    很遗憾,没有收藏 cloud firestore 已创建,但我收到了一个无法解决的错误 还没解决。

为使用地理编码而创建的函数

upload() async{

List<Map<dynamic,dynamic>> listaFornecedorNovo = [];

Firestore db = Firestore.instance;

Map<dynamic,dynamic> fornecedorNovo = Map();

QuerySnapshot querySnapshot = await db.collection("baseDados").getDocuments();

for( DocumentSnapshot item in querySnapshot.documents){

  var dados = item.data;

  fornecedorNovo["nome"]= dados["nome"];
  fornecedorNovo["localizacao"]= dados["localizacao"];
  fornecedorNovo["email"]= dados["email"];
  fornecedorNovo["telefone"]= dados["nome"];
  fornecedorNovo["site"]= dados["site"];

  //localizacao = address

  List<Placemark> listaLatLong = await Geolocator().placemarkFromAddress(dados["localizacao"]);

  Placemark local = listaLatLong[0];

  fornecedorNovo["latitude"] = local.position.latitude;
  fornecedorNovo["longitude"] = local.position.longitude;

  listaFornecedorNovo.add(fornecedorNovo);


}

for( Map map in listaFornecedorNovo) {

  db.collection("dadosComLatLong").add(map);
} } 

错误

E/flutter ( 7538): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: PlatformException(ERROR_GEOCODING_ADDRESS, grpc failed, null)
E/flutter ( 7538): #0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:569:7)
E/flutter ( 7538): #1      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:321:33)
E/flutter ( 7538): <asynchronous suspension>
E/flutter ( 7538): #2      Geolocator.placemarkFromAddress (package:geolocator/geolocator.dart:239:30)
E/flutter ( 7538): #3      _EntradaState._encontraFornecedores (package:solisbr/Telas/Entrada.dart:512:57)
E/flutter ( 7538): <asynchronous suspension>
E/flutter ( 7538): #4      _EntradaState._posicaoUsuario (package:solisbr/Telas/Entrada.dart:160:5)
E/flutter ( 7538): #5      _asyncThenWrapperHelper.<anonymous closure> (dart:async-patch/async_patch.dart:73:64)
E/flutter ( 7538): #6      _rootRunUnary (dart:async/zone.dart:1134:38)
E/flutter ( 7538): #7      _CustomZone.runUnary (dart:async/zone.dart:1031:19)
E/flutter ( 7538): #8      _FutureListener.handleValue (dart:async/future_impl.dart:139:18)
E/flutter ( 7538): #9      Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:680:45)
E/flutter ( 7538): #10     Future._propagateToListeners (dart:async/future_impl.dart:709:32)
E/flutter ( 7538): #11     Future._completeWithValue (dart:async/future_impl.dart:524:5)
E/flutter ( 7538): #12     _AsyncAwaitCompleter.complete (dart:async-patch/async_patch.dart:32:15)
E/flutter ( 7538): #13     _completeOnAsyncReturn (dart:async-patch/async_patch.dart:290:13)
E/flutter ( 7538): #14     Geolocator.getCurrentPosition (package:geolocator/geolocator.dart)
E/flutter ( 7538): #15     _asyncThenWrapperHelper.<anonymous closure> (dart:async-patch/async_patch.dart:73:64)
E/flutter ( 7538): #16     _rootRunUnary (dart:async/zone.dart:1134:38)
E/flutter ( 7538): #17     _CustomZone.runUnary (dart:async/zone.dart:1031:19)
E/flutter ( 7538): #18     _FutureListener.handleValue (dart:async/future_impl.dart:139:18)
E/flutter ( 7538): #19     Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:680:45)
E/flutter ( 7538): #20     Future._propagateToListeners (dart:async/future_impl.dart:709:32)
E/flutter ( 7538): #21     Future._completeWithValue (dart:async/future_impl.dart:524:5)
E/flutter ( 7538): #22     _AsyncAwaitCompleter.complete (dart:async-patch/async_patch.dart:32:15)
E/flutter ( 7538): #23     _completeOnAsyncReturn (dart:async-patch/async_patch.dart:290:13)
E/flutter ( 7538): #24     MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart)
E/flutter ( 7538): #25     _asyncThenWrapperHelper.<anonymous closure> (dart:async-patch/async_patch.dart:73:64)
E/flutter ( 7538): #26     _rootRunUnary (dart:async/zone.dart:1134:38)
E/flutter ( 7538): #27     _CustomZone.runUnary (dart:async/zone.dart:1031:19)
E/flutter ( 7538): #28     _FutureListener.handleValue (dart:async/future_impl.dart:139:18)
E/flutter ( 7538): #29     Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:680:45)
E/flutter ( 7538): #30     Future._propagateToListeners (dart:async/future_impl.dart:709:32)
E/flutter ( 7538): #31     Future._completeWithValue (dart:async/future_impl.dart:524:5)
E/flutter ( 7538): #32     Future._asyncComplete.<anonymous closure> (dart:async/future_impl.dart:554:7)
E/flutter ( 7538): #33     _rootRun (dart:async/zone.dart:1126:13)
E/flutter ( 7538): #34     _CustomZone.run (dart:async/zone.dart:1023:19)
E/flutter ( 7538): #35     _CustomZone.runGuarded (dart:async/zone.dart:925:7)
E/flutter ( 7538): #36     _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:965:23)
E/flutter ( 7538): #37     _microtaskLoop (dart:async/schedule_microtask.dart:43:21)
E/flutter ( 7538): #38     _startMicrotaskLoop (dart:async/schedule_microtask.dart:52:5)

【问题讨论】:

    标签: android flutter dart google-cloud-firestore geolocation


    【解决方案1】:

    这个错误在flutter-geolocator https://github.com/Baseflow/flutter-geolocator/issues/223被引用,希望对你有帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-11-12
      • 2020-02-26
      • 1970-01-01
      • 2012-05-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多