επιστρέφει Geocoder αντιμετώπιση σε εξομοιωτή Android, αλλά κανένας στο τηλέφωνό μου

ψήφοι
0

Έχω το πρόβλημα ότι αν προσπαθήσει να πάρει μια διεύθυνση με τη λειτουργία geocoder.getFromLocationName (1 «California»), ιδρύει τη διεύθυνση, αλλά αν το δοκιμάσετε στη συσκευή μου (Xiaomi MI5, Oreo) επιστρέφει μια κενή λίστα.

Ευχαριστώ εκ των προτέρων!

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);
    }

}
Δημοσιεύθηκε 28/04/2018 στις 11:14
πηγή χρήστη
Σε άλλες γλώσσες...                            


2 απαντήσεις

ψήφοι
0

Έχετε δώσει άδεια Θέση σε εφαρμογή στο τηλέφωνό σας; αν όχι .. πάει στο yourapp >> άδεια >>> locationPermission ...

Απαντήθηκε 28/04/2018 στις 11:25
πηγή χρήστη

ψήφοι
0

Θα μπορούσε να έχει προκληθεί από ένα σφάλμα στην εφαρμογή του κατασκευαστή ή εσκεμμένη έλλειψη αυτής της δυνατότητας. Όπως αναφέρεται εδώ: https://developer.android.com/reference/android/location/Geocoder

Η κατηγορία Geocoder απαιτεί μια υπηρεσία παρασκηνίου που δεν περιλαμβάνεται στον πυρήνα android πλαισίου. Οι μέθοδοι ερώτημα Geocoder θα επιστρέψει μια κενή λίστα, αν δεν υπάρχει υπηρεσία παρασκηνίου στην πλατφόρμα. Χρησιμοποιήστε τη μέθοδο isPresent () για να διαπιστωθεί αν υπάρχει εφαρμογή Geocoder.

Απαντήθηκε 11/05/2018 στις 11:57
πηγή χρήστη

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