Ionico nativo Geocoder "Non riesci a trovare una posizione."

voti
0

Sto usando il Native Geocoder nel mio ionico app. documentato qui

documentazione ionica

Github Repo

Questo è il metodo in mio fornitore -

//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);
        });
    })
  }

Il metodo accetta una stringa di indirizzo di ingresso. In modo da ottenere l'indirizzo da Google Places API, e passo la descrizione qui.

Ora, per alcuni indirizzi, semplicemente non sembra trovare le coordinate, e restituisce un messaggio Impossibile trovare una posizione. Per esempio, Bhadra Brookefields Appartamento B Block, Kundanahalli Lake Road, Kundalahalli, Brookefield, Bangalore, Karnataka, India è un indirizzo valido e restituisce le coordinate, mentre 42 Stazione di Times Square Street, New York, NY, USA non trova una corrispondenza e restituisce un messaggio che dice - non riesco a trovare una posizione.

Per ulteriori informazioni il Impossibile trovare una posizione sembra essere proveniente dal codice di Cordova plug-in qui sulla linea # 182. , Dove si fa riferimento alla classe di Android.

Si tratta di un problema noto? O c'è qualcosa che sto facendo male?

È pubblicato 16/03/2018 alle 15:10
fonte dall'utente
In altre lingue...                            


2 risposte

voti
0

Almeno un'altra persona crede il plugin sembra essere un po 'un hit / miss - un commento su questo articolo qui sotto

Ionico 2 - Geolocalizzazione e GeocodingIonic 2 - Geolocalizzazione e Geocoding

Il commento è da un certo signor Viola bordo, e non riesco a collegare il commento in sé, perché è un disq, e non consentito dal Stack.

Così, ho fatto ricorso a ciò che può essere interpretato sia come una soluzione o come una soluzione. Invece di usare il plugin, sto semplicemente utilizzando l'API, rendendo così una richiesta HTTP per ottenere le informazioni.

Metodo per ottenere le informazioni (in un provider):

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

Chiamata di metodo ->

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;
        }

Naturalmente, ci deve essere il giusto processo di registrazione per la chiave.

Risposto il 16/03/2018 a 20:04
fonte dall'utente

voti
0

Non è un problema del plugin. È necessario solo per aggiungere più uno in modo da poter chiedere il permesso di attivare il High Accuracynel telefono.

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

Risposto il 09/08/2018 a 06:46
fonte dall'utente

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