#android #google-maps #kotlin #google-places-api
#Android #google-карты #kotlin #google-places-api
Вопрос:
Когда я нажимаю «Места», автоматически заполняется окно поиска фрагмента ,
Я получаю следующую ошибку
place fields must not be empty (9012)
Я уже перешел на новый places SDK. Также проверил мой Google Billing и Maps API. Все правильно
Мой код
Places.initialize(getApplicationContext(),getResources().getString(R.string.google_api_key));
placesClient = Places.createClient(this);
AutocompleteSupportFragment placesfragment = (AutocompleteSupportFragment) getSupportFragmentManager().findFragmentById(R.id.place_autocomplete_fragment);
placesfragment.setOnPlaceSelectedListener(new PlaceSelectionListener() {
@Override
public void onPlaceSelected(@NonNull Place place) {
LatLng ll = place.getLatLng();
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(ll, 14));
if (manmarker != null) manmarker.remove();
manmarker = mMap.addMarker(new MarkerOptions().position(ll).title("Manually Selected Location"));
manapprox = getAddressFromLatLAng(ll);
manualaddr.setText(manapprox);
manlatlng = ll;
}
@Override
public void onError(Status status) { // Handle the error
Toast.makeText(MapsActivity.this, "Something went wrong! please try again " status.getStatusCode() " " status.getStatusMessage() Places.isInitialized(), Toast.LENGTH_SHORT).show();
}
});
Пожалуйста, помогите мне решить эту проблему
Ответ №1:
Попробуйте указать типы данных места для возврата с помощью setPlaceFields
:
placesfragment.setPlaceFields(listOf(Place.Field.ID, Place.Field.NAME));
Ссылка здесь.