我正在从旧的Android Places API迁移到新的API或兼容性库,在这两种方法中,自动预测搜索工作,但从所选位置的ID中获取更多细节似乎永远不会完成。
我从兼容库开始,初始的autoPrediction查找可以正常工作。 建议API密钥和账号都可以。 但是getPlaceByID未能完成。
我改用新的API,同样,新的FindAutocompletePredictions工作,但是fetchPlaces任务一直没有完成。
我把代码归结为手动放入一个ID,只要求LatLong,并且让所有可用的监听器都有断点。 它们从未被击中。
List<Place.Field> placeFields = Arrays.asList(Place.Field.LAT_LNG);
FetchPlaceRequest request = FetchPlaceRequest.builder("EhtHbGFzZ293IFN0cmVldCwgR2xhc2dvdywgVUsiLiosChQKEgmvXKElzUWISBFN3LArF1aEERIUChIJqZHHQhE7WgIReiWIMkOg-MQ", placeFields)
.build();
placesClient.fetchPlace(request).addOnCompleteListener(new OnCompleteListener<FetchPlaceResponse>() {
@Override
public void onComplete(@NonNull Task<FetchPlaceResponse> task) {
System.out.println("");
}
}).addOnCanceledListener(new OnCanceledListener() {
@Override
public void onCanceled() {
System.out.println("");
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
System.out.println("");
}
}).addOnSuccessListener(new OnSuccessListener<FetchPlaceResponse>() {
@Override
public void onSuccess(FetchPlaceResponse fetchPlaceResponse) {
System.out.println("");
}
});
我希望能击中其中一个监听器,并看到一个地方,或一些失败的原因。 或者,至少在logcat里有一些东西来说明发生了什么。
使用
public Task<TResult> addOnCompleteListener(@NonNull OnCompleteListener<TResult> var1)