Хотите узнать текущее местоположение в React native 0.55.1 - PullRequest
0 голосов
/ 01 мая 2019

Я хочу получить текущее местоположение. Это работает для текущей собственной версии реакции, но я хочу, чтобы это было для собственной версии реагирования 0.55.1

Я пробовал таким образом, и она работает

constructor(props) {
      super(props);

      this.state = {
        latitude: null,
        longitude: null,
        error:null,
      };
    }
componentDidMount() {
      navigator.geolocation.getCurrentPosition(
         (position) => {
           console.log("wokeeey");
           console.log(position);
           this.setState({
             latitude: position.coords.latitude,
             longitude: position.coords.longitude,
             error: null,
           });
         },
         (error) => this.setState({ error: error.message }),
         { enableHighAccuracy: false, timeout: 200000, maximumAge: 1000 },
       );
     }

И я напечатал, используя это

<View>

          <Text> Longitude:- {this.state.latitude} </Text>
          <Text> Latitude:- {this.state.longitude} </Text>
          <Text> {this.state.error} </Text>

        </View>

Но для реагирования родной 0.55.1 не работает.Пожалуйста, помогите мне, что я должен делать?

1 Ответ

0 голосов
/ 02 мая 2019

Для Android вы должны добавить ниже указанные разрешения в файле манифеста Android

 <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

Не забудьте включить GPS на вашем устройстве

Вы можете использовать этот метод также для получения текущей позиции

navigator.geolocation.watchPosition(
         (position) => {
           console.log("wokeeey");
           console.log(position);
           this.setState({
             latitude: position.coords.latitude,
             longitude: position.coords.longitude,
             error: null,
           });
         },
         (error) => this.setState({ error: error.message }),
         { enableHighAccuracy: false, timeout: 200000, maximumAge: 1000 },
       );
...