Flutter-geolocator: Cuando la dirección de Geolocator (). PlacemarkFromAddress () no es correcta, ¿cómo puedo obtener un valor nulo en lugar de una excepción?

Creado en 2 dic. 2019  ·  4Comentarios  ·  Fuente: Baseflow/flutter-geolocator

¡Hola!

Funciona bien cuando la dirección del parámetro de Geolocator (). PlacemarkFromAddress () es correcta.
Pero, la dirección no es correcta (no se puede encontrar en el mapa de Google), esta función devuelve "PlatformException (PlatformException (ERROR_GEOCODNG_ADDRESSNOTFOUND, No se pueden encontrar coordenadas que coincidan con la dirección proporcionada., Null))"
Como esta foto
2019-12-02

Entonces, si la dirección no es correcta, ¿cómo puedo obtener un valor nulo en lugar de una excepción de 'PlatformException (PlatformException (ERROR_GEOCODNG_ADDRESSNOTFOUND, No se pueden encontrar coordenadas que coincidan con la dirección proporcionada., Null))'?

Todos 4 comentarios

Hola, ¿resolviste esto?

@NaufalHafizi podría simplemente en un intento ... declaración de captura:

List<Placemark> placemarks = null;
try {
  placemarks = await Geolocator().placemarkFromAddress(query);
} on PlatformException catch (e) {
  if (e.errorCode == 'ERROR_GEOCODING_ADDRESSNOTFOUND') {
    placemarks = null;
  } else {
    // Don't handle this case so rethrow the exception...
    rethrow;
  }
}

Tenga en cuenta que, como parte de la versión 6.0.0 del geolocalizador, hemos trasladado las funciones de codificación geográfica a su propio complemento dedicado y hemos eliminado placemarkFromAddress y placemarkFromCoordinates del complemento del geolocalizador.

@NaufalHafizi podría simplemente en un intento ... declaración de captura:

List<Placemark> placemarks = null;
try {
  placemarks = await Geolocator().placemarkFromAddress(query);
} on PlatformException catch (e) {
  if (e.errorCode == 'ERROR_GEOCODING_ADDRESSNOTFOUND') {
    placemarks = null;
  } else {
    // Don't handle this case so rethrow the exception...
    rethrow;
  }
}

Tenga en cuenta que, como parte de la versión 6.0.0 del geolocalizador, hemos trasladado las funciones de codificación geográfica a su propio complemento dedicado y hemos eliminado placemarkFromAddress y placemarkFromCoordinates del complemento del geolocalizador.

gracias

@NaufalHafizi podría simplemente en un intento ... declaración de captura:

List<Placemark> placemarks = null;
try {
  placemarks = await Geolocator().placemarkFromAddress(query);
} on PlatformException catch (e) {
  if (e.errorCode == 'ERROR_GEOCODING_ADDRESSNOTFOUND') {
    placemarks = null;
  } else {
    // Don't handle this case so rethrow the exception...
    rethrow;
  }
}

Tenga en cuenta que, como parte de la versión 6.0.0 del geolocalizador, hemos trasladado las funciones de codificación geográfica a su propio complemento dedicado y hemos eliminado placemarkFromAddress y placemarkFromCoordinates del complemento del geolocalizador.

gracias

if (e.errorCode == 'ERROR_GEOCODING_ADDRESSNOTFOUND')
aquí 'e.errorcode' no funciona para mí
muestra que el getter 'código de error' no está definido para el tipo de 'PlatformException'
¿ayudarás a verlo?

¿Fue útil esta página
0 / 5 - 0 calificaciones