Я создаю приложение для Android, которое сохраняет идентификатор места, полученный из API PlaceAutocomplete. Позже я пытаюсь получить информацию о месте, используя API getPlaceById(). Я вижу, что обратный вызов никогда не вызывается.
Я установил следующее разрешение:
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
Я также добавил API_KEY:
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value=<API KEY>/>
Однако я не могу получить информацию о месте. «onResult», кажется, никогда не вызывается. Может ли кто-нибудь помочь мне с тем, где я могу ошибаться?
Спасибо!
Ниже приведен фрагмент кода, который я использую. Здесь для простоты жестко закодирован PlaceId:
PendingResult<PlaceBuffer> placeResult = Places.GeoDataApi.getPlaceById(mGoogleApiClient, "ChIJi-t8KwUWrjsRlp-L9ykb2_k");
placeResult.setResultCallback(new ResultCallback<PlaceBuffer>() {
@Override
public void onResult(PlaceBuffer places) {
Log.i(TAG, "Testing");
if (places.getStatus().isSuccess() && places.getCount() > 0) {
final Place myPlace = places.get(0);
Log.i(TAG, "Place found: " + myPlace.getName());
} else {
Log.e(TAG, "Place not found");
}
places.release();
}
});