Reputation: 75
I am using google places API and in the parsing I am using JSON, but this line
JsonHttpParser parser = new JsonHttpParser(new JacksonFactory());
request.addParser(parser);
is deprecated. Is there any way to fix or any alternative way?
Here's the function:
public Placeslist search(double latitude, double longitude, double radius, String types)
throws Exception {
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);
// Check log cat for places response status
Log.d("Places Status", "" + list.status);
return list;
} catch (HttpResponseException e) {
Log.e("Error:", e.getMessage());
return null;
}
}
// Creating http request Factory
public static HttpRequestFactory createRequestFactory(
final HttpTransport transport) {
return transport.createRequestFactory(new HttpRequestInitializer() {
public void initialize(HttpRequest request) {
GoogleHeaders headers = new GoogleHeaders();
headers.setApplicationName("Google-Places-Test");
request.setHeaders(headers);
JsonHttpParser parser = new JsonHttpParser(new JacksonFactory());
request.addParser(parser);
}
});
}
Upvotes: 1
Views: 871
Reputation: 2563
It appears that class JsonHttpParser
and method HttpRequest
were both deprecated in version 1.11. See The Deprecated list for more information.
So instead of:
JsonHttpParser parser = new JsonHttpParser(new JacksonFactory());
request.addParser(parser);
You would now have:
JsonObjectParser parser = new JsonObjectParser(new JacksonFactory());
request.setParser(parser);
And change your import to:
import com.google.api.client.json.JsonObjectParser;
EDIT: I have tested this and it works for me.
Upvotes: 5