Geocoder returnează false pe isPresent ()

voturi
0

Așa că am scris un cod pentru hărți în aplicația mea, și funcționează pe telefonul meu foarte bine, din păcate nu funcționează pe emulator meu, care nu este suficient de confortabil pentru mine aici este codul:

String  searchString = mSearchText.getText().toString();

Geocoder geocoder = new Geocoder(this);
List<Address> list = new ArrayList<>();
try{
    int i=0;
    while(list.size()==0 && i<10) {
        boolean a = geocoder.isPresent();
        list = geocoder.getFromLocationName(searchString,1);
        i++;
    }
}catch(IOException e){
    Log.d(TAG, geoLocate: IOException  + e.getMessage());
}

Deci, atunci când am depana văd că variabila „o“ este întotdeauna fals pe emulator meu.

Eu folosesc emulator Android pentru Visual Studio, deoarece am un procesor AMD (Ryzen 7 1800x), pe care l-am instalat Google magazin de joc și Google Play servicii (hartă funcționează bine doar geocoder, nu), acum există un mod de a remedia problema ?

Așa cum am citit pe https://developer.android.com/reference/android/location/Geocoder.html site - ul „Metodele de interogare geocoder va returna o listă goală în cazul în care nu există nici un serviciu backend în platforma.“ Pot obține serviciul într -un fel? Descarcă - l pe emulator meu sau ceva de genul asta?

Întrebat 24/04/2018 la 08:14
sursa de către utilizator
În alte limbi...                            


1 răspunsuri

voturi
0

În primul rând, isPresent () este o metodă statică, astfel încât apelul ar trebui să fie

Geocoder.isPresent();

Metoda IsPresent „Returnează true dacă metodele geocoder getFromLocation și getFromLocationName sunt puse în aplicare“ și false în caz contrar. Unele emulatoare nu au serviciul de geocoder instalat. Este metoda

geocoder.getFromLocationName 

revenind ceea ce aveți nevoie sau un array gol?

Fragmentul nu funcționează bine pe Nexus 6P Android 7.0 API 24 emulator.

Publicat 24/04/2018 la 08:52
sursa de către utilizator

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