【问题标题】:Google maps not displaying in android谷歌地图不显示在android中
【发布时间】:2016-06-22 15:27:57
【问题描述】:

我正在我的应用程序中处理谷歌地图。现在在 android 中地图没有显示,虽然我检查了代码它很好并且一切正常。

我检查过的步骤运行良好: 1)SHA代码很好。 2)我在应用程序中插入的密钥很好。 3) 我已经为我的应用程序启用了地图 API。

但是当我访问地图片段时,logcat 会显示以下内容:

06-22 18:57:47.380 8417-10561/ I/b: Sending API token request.
06-22 18:57:50.300 8417-10561/ E/b: Authentication failed on the server.
06-22 18:57:50.300 8417-10561/ E/Google Maps Android API: Authorization failure.  
  Please see https://developers.google.com/maps/documentation/android-api/start for how to correctly set up the map.

06-22 18:57:50.300 8417-10561/ E/Google Maps Android API: 
                In the Google Developer Console (https://console.developers.google.com)
                   Ensure that the "Google Maps Android API v2" is enabled.
                   Ensure that the following Android Key exists:
                   API Key: AIz------------------------------------S
          Android Application (<cert_fingerprint>;<package_name>): SHA-1FingerPrint;PackageName

现在我已经通过互联网搜索了有关此问题的信息,但尚未找到解决方案。我已经解决了以下问题,但没有结果。

Google Maps V2 not working in production with correct key

Google Maps Android API v2 Authorization failure

这是我的地图活动代码:

private void setupWebView(View parentView) {
    loading = (ProgressBar) parentView.findViewById(R.id.loading);
    loading.setVisibility(View.GONE);
    if (googleMap == null) {
        googleMap = ((MapFragment) getActivity().getFragmentManager().findFragmentById(R.id.mapf)).getMap();

    }
    setupMarkers(searchCenters.getText().toString());
}

private void setupMarkers(String searchFor) {
    googleMap.clear();
    if (searchFor == null || searchFor == "") {
        for (Center center : centers) {
            markers.add(
                    googleMap
                            .addMarker(new MarkerOptions()
                                    .position(new LatLng(center.getAddress().getLatitude(),
                                            center.getAddress().getLongitude()))
                                    .title(center.getName()).visible(true)));

        }
    } else {
        for (Center center : centers) {
            if (center.getName().toLowerCase().contains(searchFor.toLowerCase())) {
                markers.add(
                        googleMap.addMarker(new MarkerOptions()
                                .position(new LatLng(center.getAddress().getLatitude(),
                                        center.getAddress().getLongitude()))
                                .title(center.getName()).visible(true)));
            } else {
                markers.add(
                        googleMap.addMarker(new MarkerOptions()
                                .position(new LatLng(center.getAddress().getLatitude(),
                                        center.getAddress().getLongitude()))
                                .title(center.getName()).visible(false)));
            }
        }
    }

结果是这样的:

谁能帮我解决这个问题。我知道这个问题已经被问过很多次了,但我仍然找不到答案。

【问题讨论】:

  • 我终于找到了解决办法。也许会帮助你stackoverflow.com/questions/16551458/…
  • @mehmet 谢谢你的评论。但是我通过重新输入凭据并删除密钥并再次插入它解决了这个问题,它工作正常。我一直不明白为什么以及如何发生

标签: android google-maps google-maps-api-3


【解决方案1】:

Android Studio 有两条路径

app/src/debug/res/values/google_maps_api.xml
app/src/release/res/values/google_maps_api.xml

确保两者具有相同的 google_maps_key

【讨论】:

    【解决方案2】:

    根据您提供的错误日志,Google Maps Android API: Authorization failure. 确保在 Google API 的控制台中激活 Google Maps Android API v2 服务,在生成 API 密钥时使用正确的包名称,确保您使用正确的密钥库文件生成 SHA1 并按照日志中的建议,确保启用了 Google Maps Android API v2,确保存在以下 Android 密钥。

    我的建议是阅读Maps Android API 的官方 Google 文档,该指南是向 Android 应用添加地图的快速入门。文档还讨论了如何获取Maps API Key,还包括示例代码。

    这是一个示例代码,其中包含一些说明如何使用 Google Maps Android API 的示例:https://github.com/googlemaps/android-samples

    【讨论】:

    • 感谢您的回答。实际上我提供的一切都是正确的。当我在删除密钥后重新输入凭据时,它开始正常工作。不知道如何以及为什么。
    • 您好,umair,如果您找到任何解决方案,请在此处发布。通过这种方式,我们可以帮助遇到此问题的其他人。
    • 实际上这是一个有线问题。一切正常。我刚刚删除了密钥并重新输入它,它开始正常工作。没有改变任何其他的关键。
    猜你喜欢
    • 2013-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多