Geocoder retouradres in Android-emulator, maar niemand in mijn telefoon

stemmen
0

Ik heb het probleem dat als ik probeer om een ​​adres te komen met de geocoder.getFromLocationName ( California, 1) functie, sticht het adres, maar als ik test het op mijn toestel (Xiaomi Mi5, Oreo) retourneert een lege lijst.

Bij voorbaat dank!

private void geoLocate(){
    Log.d(TAG, geoLocate: geolocating);
    String searchString = mSearchText.getText().toString();
    Log.d(TAG, geoLocate: Searching for  + searchString);
    Geocoder geocoder = new Geocoder(this);
    List<Address> list = new ArrayList<>();

    try{
        if(geocoder.isPresent()){
             list = geocoder.getFromLocationName(searchString,1);
        } else{
            Log.d(TAG, geoLocate: GEOCODER IS NOT PRESENT);
        }

    }catch (IOException e){
        Log.e(TAG, geoLocate: IOException  + e.getMessage() );
    }

    if(list.size() > 0 ){
        Address address = list.get(0);
        Log.d(TAG, geoLocate: found a location:  + address.toString());
    }else{
        Log.d(TAG, geoLocate: Location not found);
    }

}
De vraag is gesteld op 28/04/2018 om 11:14
bron van user
In andere talen...                            


2 antwoorden

stemmen
0

Heb je bepaalde locatie toestemming om uw applicatie op je telefoon? zo niet .. ga naar yourapp >> toestemming >>> locationPermission ...

antwoordde op 28/04/2018 om 11:25
bron van user

stemmen
0

Het zou kunnen zijn veroorzaakt door een fout in de uitvoering van de fabrikant of een bewuste ontbreken van die functie. Zoals hier vermeld: https://developer.android.com/reference/android/location/Geocoder

De Geocoder klasse vereist een backend dienst die niet is opgenomen in de kern android kader. De Geocoder vraag methoden zal terugkeren een lege lijst als er geen back-end service in het platform. Gebruik de methode isPresent () om te bepalen of een Geocoder implementatie bestaat.

antwoordde op 11/05/2018 om 11:57
bron van user

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