Хотите получить текущее местоположение из react native js google api key

#react-native #google-geocoder #google-geolocation

#react-native #google-геокодер #google-геолокация

Вопрос:

Я хочу получить текущее местоположение в тексте / оповещении в react native, хочу название города в тексте

Вот мой код:

 getData(){

        Geocoder.init("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");

        Geocoder.from(41.89, 12.49)
            .then(json => {
                var addressComponent = json.results[0].formatted_address;
          console.log(addressComponent);
          console.log(addressComponent)
         alert(addressComponent);
            })
          .catch(error => console.warn(error));
        }
  

Комментарии:

1. Вам не нужен Google API, чтобы получить текущие координаты устройства. Вы можете использовать Geolocation API

Ответ №1:

Завершите пример с API геолокации.

Как я уже сказал в комментарии; вам не нужен Google API, чтобы получить текущие координаты устройства. Вы можете использовать Geolocation API

 import React, { Component } from 'react';
import { View, Text } from 'react-native';

class FindMyLocationExample extends Component {
  constructor(props) {
    super(props);

    this.state = {
      latitude: null,
      longitude: null,
      error: null,
    };
  }

  componentDidMount() {
    navigator.geolocation.getCurrentPosition(
      (position) => {
        this.setState({
          latitude: position.coords.latitude,
          longitude: position.coords.longitude,
          error: null,
        });
      },
      (error) => this.setState({ error: error.message }),
      { enableHighAccuracy: true, timeout: 10000, maximumAge: 1000 },
    );
  }

  render() {
    return (
      <View style={{ flexGrow: 1, alignItems: 'center', justifyContent: 'center' }}>
        <Text>Latitude: {this.state.latitude}</Text>
        <Text>Longitude: {this.state.longitude}</Text>
        {this.state.error ? <Text>Error: {this.state.error}</Text> : null}
      </View>
    );
  }
}
  

Комментарии:

1. Да, но я хочу показать название города или получить город. таким образом, он дает только широту, длительность и подробности… с их помощью я хочу напечатать название города. пожалуйста, помогите мне

2. Вот почему я пытался использовать geocorder, но понятия не имею.

Ответ №2:

 getData(){

        Geocoder.init("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");

        Geocoder.from(41.89, 12.49)
            .then(json => {
                var addressComponent = json.results[0].formatted_address;
          console.log(addressComponent);
          console.log(addressComponent)
         alert(addressComponent);
            })
          .catch(error => console.warn(error));
        }
  

Я хочу объединить это с текущим местоположением широта n долгота

Ответ №3:

Используйте этот код, чтобы получить текущую широту и долготу:

 navigator.geolocation.getCurrentPosition(
(position) => {
    console.log('lat',position.coords.latitude);
    console.log('lng',position.coords.longitude);
    //Your Code
    // ( DO fetch call to get address from lat and lng
    // https://maps.googleapis.com/maps/api/geocode/json?key= 
    <API_KEY_HERE>amp;latlng="latitude","longitude"amp;sensor=true )
},
(error) => this.setState({ error: error.message }),
   { enableHighAccuracy: true, timeout: 20000, maximumAge: 1000 },
);
  

Комментарии:

1. Да, но я хочу показать название города или получить город. таким образом, он дает только широту, длительность и подробности… с их помощью я хочу напечатать название города. пожалуйста, помогите мне