Android-эмулятор Реагирует на собственную геолокацию, которая не работает

#javascript #reactjs #react-native #android-studio #react-redux

#javascript #reactjs #react-native #android-studio #react-redux

Вопрос:

Я работаю над кодом геолокации в Android Studio с использованием Windows. Но по какой-то причине мое текущее местоположение не выбрано. Я пытался использовать другие параметры, такие как enableHighAccuracy:false. также пытался запустить Telnet и применить геофиксацию long lat, но ничего не происходит.

Пожалуйста, посмотрите соответствующий код, который действительно работает, когда я тестировал на expo snacks.

   findCurrentLocationAsync=()=>{

      navigator.geolocation.getCurrentPosition(
          (position) => {
         //   console.log(position);
            let lat=position.coords.latitude;
            let long=position.coords.longitude;
            
            this.setState({
              markerPosition: {
                lat: lat,
                lng: long
            },
            mapPosition: {
                latitude: lat,
                longitude: long,
                latitudeDelta: 0.0922,
                longitudeDelta: 0.0421,
            }
            });

             Geocoder.from( this.state.mapPosition.latitude , this.state.mapPosition.longitude ).then(
              response => {
                  const address = response.results[0].formatted_address,
                        addressArray =  response.results[0].address_components,
                        city = this.getCity( addressArray ),
                        area = this.getArea( addressArray ),
                        state = this.getState( addressArray );
                        zip = this.getZip( addressArray );
      
                console.log(addressArray)
      
                  this.setState( {
                      address: ( address ) ? address : '',
                      area: ( area ) ? area : '',
                      city: ( city ) ? city : '',
                      state: ( state ) ? state : '',
                      zip: ( zip ) ? zip : '',
                  } )
              },
              error => {
              //  console.error( error );
              }
          )

          },
         
         //{ enableHighAccuracy: true, timeout: 15000, maximumAge: 10000 },
         ///()=>console.log(lat)  
      );

    
     };

 

Я был бы признателен за предложения

спасибо, сэл

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

1. Также сообщение о коде.

2. пожалуйста, проверьте. код работает. но не выбор текущего местоположения. просто вставил соответствующий код. Спасибо

3. вы использовали expo-location. но я думаю, что это скорее проблема андорида. видите ли вы probelm с помощью navigator.geolocation.getCurrentPosition?

Ответ №1:

Настройки местоположения эмульгатора

Если вы этого не сделали, установите местоположение, используя настройки Android emu. Эмулятор Android имеет панель настроек справа. Нажмите кнопку «три точки» и отметьте местоположение, которое вы хотите эмулировать, затем установите местоположение.

Если вы выполнили эти шаги, проигнорируйте это.

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

1. кто-нибудь может объяснить, почему мы не получаем lat long в этом коде expo snack. я мог бы связать этот код с моей проблемой, спасибо snack.expo.io/@coder79/geolocation-example