android - JsonHttpParser.jsonFactory 字段不可见

标签 android

我正在开发一个应用程序,它只显示附近的地点到我的位置,我已经实现了 map 布局并获得了我的位置。我用过这个博客http://ddewaele.blogspot.com/2011/05/introducing-google-places-api.html

为了检索附近的地点,但有一个问题我无法用这种方法解决

private static final HttpTransport 传输 = AndroidHttp .newCompatibleTransport(); 公共(public)静态 HttpRequestFactory createRequestFactory(最终 HttpTransport 传输){

    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 连接来执行搜索 url

问题是在 parser.jsonFactory = new JacksonFactory(); eclipse 告诉我字段 JsonHttpParser.jsonFactory 不可见。知道我已经导入了所有必要的外部 jar,我该如何解决这个问题。

谢谢

最佳答案

我之前遇到过同样的问题。

这是因为 jsonFactory 和 headers 变量从 1.6 开始被弃用。如果您使用的是 1.6 版本之前的 Google API,它应该可以正常工作。

检查此以获取更多信息:

  1. http://www.jarvana.com/jarvana/view/com/google/http-client/google-http-client/1.5.0-beta/google-http-client-1.5.0-beta-javadoc.jar!/com/google/api/client/http/json/JsonHttpParser.html#jsonFactory

  2. http://javadoc.google-http-java-client.googlecode.com/hg/1.5.0-beta/com/google/api/client/http/HttpRequest.html

您需要设计要使用的替代方法。

使用下面重新构造的代码:

GoogleHeaders headers = new GoogleHeaders();
headers.setApplicationName("Google-Places-DemoApp");
request.setHeaders(headers);

request.addParser(new JsonHttpParser(new JacksonFactory()));

注意:未经测试!

关于android - JsonHttpParser.jsonFactory 字段不可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9985448/

相关文章:

java - Android ListView : Changes made to Items affect other Items

android - é=é : need to show as it is

java - 为多部分实体设置编码

android - 服务连接到 Firebase 是个坏主意?

android - 需要为 iOS 和 Android 实现即时消息?

android - Android 中加载、回收和消除位图以提高内存效率

android - Activity 崩溃时,该过程仍然有效,我无法杀死它

android - String[] Array 通过Intent 到另一个Activity(Main activity extends fragment class)

android - Re- JobScheduler 结合 FusedLocationProvider Api 经常给出空位置值

onresume - 安卓: "Application level"暂停和恢复