【问题标题】:Map view appears white地图视图显示为白色
【发布时间】:2014-08-18 15:18:42
【问题描述】:

直到最近地图视图工作正常,但现在显示为白色,即使我从该位置获取地址,如您在图片中看到的那样

我猜不出来是什么问题

代码是这样的

@覆盖 公共位图 doInBackground(Void... 参数) {

    String url = String.format(
        "http://maps.google.com/maps/api/staticmap?center=%f,%f&zoom=16&size=%dx300&sensor=false&key=%s",
        lat,
        lon,
        imageWidth,
        context.getResources().getString(R.string.mapApiKey2)
    );

    Log.d("MAP REQUEST ", "" + url);
    Bitmap bmp = null;
    HttpClient httpclient = new DefaultHttpClient();
    HttpGet request = new HttpGet(url);

    InputStream in;
    try {
        in = httpclient.execute(request).getEntity().getContent();
        bmp = BitmapFactory.decodeStream(in);
        in.close();
    } catch (IllegalStateException e) {
    } catch (ClientProtocolException e) {
    } catch (IOException e) {
    }
    return bmp;
}

我的 MapView 也可以正常工作,所以问题出在这张静态地图上。

如果我把这段代码中生成的 url 粘贴到我得到的浏览器上

The Google Maps API server rejected your request. This API project is not authorized to use this API. Please ensure that this API is activated in the APIs Console: Learn more: https://code.google.com/apis/console

但我不明白,因为我已经在那里激活了它

【问题讨论】:

  • 错误日志中有任何消息吗?
  • 没有没有关于地图的错误
  • 确保您使用的是正确的 API 密钥
  • 我的想法完全正确,@AleksG 但如果没有错误,它就不可能是 API 密钥。
  • @user3249477 请再次仔细查看日志。如果是 API 密钥问题,则只有一行 W/ 消息。

标签: android google-maps


【解决方案1】:

嗯,只是我没有激活正确的 API,看来 google 现在有不同的 API 用于不同的目的。

我只激活了Google Maps Android API v2,一切正常,但现在我也必须激活Static Maps API

【讨论】:

    【解决方案2】:

    这里有几种可能性:

    1. 您更改了密钥库以制作应用程序(调试与生产),您需要为每个密钥库使用不同的 Google Maps API 密钥。

    2. 您可以访问互联网吗?在我的例子中,我使用 VPN 来访问我的应用程序的网络服务端点,但 VPN 阻止了互联网访问,导致我的地图变成了这样。

    希望这会有所帮助。

    【讨论】:

    • 我的整个应用程序都是基于互联网的,所以是的,我可以访问互联网。我仍在调试中,所以我没有更改密钥库,但可以确保我刚刚生成了一个新密钥并且它仍然是相同的
    • 投反对票,真的吗?我知道这不是一个最终和全面的答案,但我没有足够的声誉来添加 cmets,那么我应该如何提出建议?
    • 不是我,我也是低代表用户:/
    • 看起来我冒犯了 StackOverflow 的高而强大的官僚机构......继续投票,你将继续得到应该是 cmets 的半生不熟的答案:)
    【解决方案3】:

    常见错误 #1。 请不要留下空的 catch 语句!这可能,并最终会导致隐藏的错误。

    至少打印每个中的堆栈跟踪:

    e.printStackTrace():
    

    【讨论】:

    • 观察良好,但我仍然没有收到有关地图的错误
    • @Elgert 您的更新表明 API 密钥不被接受。尝试创建一个新的。自从第一次创建密钥以来,您的包名称可能发生了变化?
    • 我昨天创建了一个新的并仔细检查了 SHA1 密钥和包名称,它们是正确的:/
    猜你喜欢
    • 2014-04-21
    • 1970-01-01
    • 1970-01-01
    • 2016-08-07
    • 2016-01-10
    • 2020-11-29
    相关资源
    最近更新 更多