0
Это дает ошибкуHTTP URL соединения для извлечения данных андроида
Error:(57, 16) error: cannot find symbol class HttpResponseException
Я реализовал этот код, но большинство библиотек устарели и не могу найти какое-либо решение.
Доступен ли обновленный код для получения сведений об этом месте с помощью google api.
код приведен ниже:
public class GooglePlaces
{
private static final HttpTransport HTTP_TRANSPORT=new NetHttpTransport();
private static final String API_KEY="Myapikey";
private static final String PLACES_SEARCH_URL="https://maps.googleapis.com/maps/api/place/search/json?";
private static final String PLACES_TEXT_SEARCH_URL="https://maps.googleapis.com/maps/api/place/search/json?";
private static final String PLACES_DETAILS_URL="https://maps.googleapis.com/maps/api/place/details/json?";
private double _latitude;
private double _longitude;
private double _radius;
public PlacesList search(double latitude, double longitude,double radius, String types) throws Exception
{
this._latitude=latitude;
this._longitude=longitude;
this._radius=radius;
try
{
HttpRequestFactory httpRequestFactory =createRequestFactory(HTTP_TRANSPORT);
HttpRequest request=httpRequestFactory
.buildGetRequest(new GenericUrl (PLACES_SEARCH_URL));
request.getUrl().put("key",API_KEY);
request.getUrl().put("location",_latitude+","+_longitude);
request.getUrl().put("radius",_radius);
request.getUrl().put("sensor",false);
if(types!=null)
request.getUrl().put("types",types);
PlacesList list=request.execute().parseAs(PlacesList.class);
Log.d("Places Status",""+list.status);
return list;
}
catch (HttpResponseException e)
{
Log.e("Error:",e.getMessage());
return null;
}
}
public PlaceDetails getPlaceDetails(String reference) throws Exception
{
try
{
HttpRequestFactory httpRequestFactory = createRequestFactory(HTTP_TRANSPORT);
HttpRequest request=httpRequestFactory
.buildGetRequest(new GenericUrl(PLACES_DETAILS_URL));
request.getUrl().put("key",API_KEY);
request.getUrl().put("reference",reference);
request.getUrl().put("sensor","false");
PlaceDetails place = request.execute().parseAs(PlaceDetails.class);
return place;
}
catch (HttpResponseException e)
{
Log.e("Error in Place Details",e.getMessage());
throw e;
}
}
public static HttpRequestFactory createRequestFactory(
final HttpTransport transport)
{
return transport.createRequestFactory(new HttpRequestInitializer()
{
public void initialize(HttpRequest request)
{
GoogleHeaders headers=new GoogleHeaders();
headers.setApplicationName("PocketAmbulance");
request.setHeadres(headers);
JSONObjectParser parser=new JsonHttpParser(new JacksonFactory());
request.addParser(parser);
}
});
}
}