Iónica nativo Geocoder "No se puede encontrar un lugar."

votos
0

Estoy utilizando el nativo Geocoder en mi iónico aplicación. documentado aquí

documentación iónica

Github Repo

Este es el método en el profesional -

//This calls the Native geocoder and returns the geocoordinates. 
  getGeoCode(address: string): Promise<any> {
    console.log('The address key is - ' + address);
    return new Promise((resolve, reject) => {
      this.nativeGeocoder.forwardGeocode(address)
        .then((nativegeocoordinates: NativeGeocoderForwardResult) => {
          console.log('The coordinates are - ' + JSON.stringify(nativegeocoordinates));
          let addressCoordinates: DeliveryAddressCoordinates = nativegeocoordinates;
          resolve(addressCoordinates);
        })
        .catch((error: any) => {
          console.log(JSON.stringify(error));
          reject(error);
        });
    })
  }

El método acepta una cadena de dirección como entrada. Por lo que obtener la dirección de la API de Google Places, y paso la descripción aquí.

Ahora, para ciertas direcciones, simplemente no parecen encontrar las coordenadas, y devuelve un mensaje No se puede encontrar un lugar. Por ejemplo, Bhadra Brookefields Apartamento B Block, Kundanahalli Lake Road, Kundalahalli, Brookefield, Bangalore, Karnataka, India es una dirección válida y devuelve las coordenadas, mientras que Times Square 42 Street Station, Nueva York, Nueva York, EE.UU. no encuentra un partido y devuelve un mensaje diciendo - no se puede encontrar un lugar.

Para obtener más información del No se puede encontrar un lugar parece que se origina a partir del código de Córdoba plugin de aquí en línea # 182. , Donde se hace referencia a la clase de Android.

Es este un problema conocido? ¿O hay algo que estoy haciendo mal?

Publicado el 16/03/2018 a las 12:10
fuente por usuario
En otros idiomas...                            


2 respuestas

votos
0

Al menos una persona cree que el complemento parece ser un poco de un éxito / perder - un comentario sobre este artículo a continuación

Iónica 2 - Geolocalización y GeocodingIonic 2 - Geolocalización y geocodificación

El comentario es de un señor púrpura de borde, y no puedo vincular el comentario en sí, ya que es un DISQ, y no permitido por la pila.

Por lo tanto, he recurrido a lo que puede ser interpretado tanto como una solución o como una solución. En lugar de utilizar el plugin, simplemente estoy utilizando la API, lo que hace una petición HTTP para obtener la información.

Método para obtener la información (en un proveedor):

 getGeoCodefromGoogleAPI(address: string): Observable<any> {
    return this._http.get('https://maps.googleapis.com/maps/api/geocode/json?address=' + address)
      .map(res => res.json());
  }

llamada al método ->

this._deliveryAddressService.getGeoCodefromGoogleAPI(event.description).subscribe(addressData => {

        let latitude: string = addressData.results[0].geometry.location.lat;
        let longitude: string = addressData.results[0].geometry.location.lng;
        }

Por supuesto, es necesario que exista el debido proceso de registro para la clave.

Respondida el 16/03/2018 a las 17:04
fuente por usuario

votos
0

No es un problema del plugin. Sólo se necesita añadir más uno para que pueda pedir permiso para activar el High Accuracyen el teléfono.

https://ionicframework.com/docs/native/location-accuracy/

Respondida el 09/08/2018 a las 06:46
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more