我正在开发一个应用程序,只显示我所在位置附近的地方,我已经实现了地图布局并得到了我的位置。我使用过这个博客http://ddewaele.blogspot.com/2011/05/introducing-google-places-api.html
为了检索附近的地方,但是在这种方法中我无法解决一个问题
private static final HttpTransport transport = AndroidHttp .newCompatibleTransport(); 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-DemoApp");
request.setHeaders(headers);
JsonHttpParser parser = new JsonHttpParser();
parser.jsonFactory = new JacksonFactory();
request.addParser(parser);
}
});
}
只是打开一个http连接来执行搜索网址
问题是在parser.jsonFactory = new JacksonFactory(); eclipse告诉我,字段JsonHttpParser.jsonFactory不可见。知道我已经导入了所有必要的外部罐子,我怎么能解决这个问题。
谢谢
答案 0 :(得分:1)
之前我遇到过同样的问题。
这是因为 jsonFactory和header变量从1.6 开始被删除。如果您在1.6版本之前使用Google API,它应该可以正常运行。
检查以获取更多信息:
您需要设计可供使用的替代方法。
使用以下重新构图的代码:
GoogleHeaders headers = new GoogleHeaders();
headers.setApplicationName("Google-Places-DemoApp");
request.setHeaders(headers);
request.addParser(new JsonHttpParser(new JacksonFactory()));
注意:未经测试!
答案 1 :(得分:0)
似乎在版本1.11中不推荐使用Class JsonHttpParser和Method HttpRequest。有关详细信息,请参阅The Deprecated list。
所以而不是:
JsonHttpParser parser = new JsonHttpParser();
parser.jsonFactory = new JacksonFactory();
request.addParser(parser);
尝试:
JsonObjectParser parser = new JsonObjectParser(new JacksonFactory());
request.setParser(parser);
并使用import:
import com.google.api.client.json.JsonObjectParser;
注意:未经测试。