12

我正在使用适用于 iOS 的 Google Maps SDK 的当前版本 1.1.2。地图仅显示 Google 徽标、当前位置和添加的标记。但没有任何地图内容:

在此处输入图像描述

我正确注册了 API 密钥:

BOOL result = [GMSServices provideAPIKey:@"<my key>"];

结果是YES,我验证了 bundleIdentifier 与 API 控制台匹配。我从情节提要加载 GMSMapView 并将相机设置在我的-viewDidLoad

self.mapView.camera = [GMSCameraPosition cameraWithLatitude:0 longitude:0 zoom:2];

这是由 GMSMapView 记录的:

Failed to make complete framebuffer object 8cd6
Failed to make complete framebuffer object 8cd6
Google Maps SDK for iOS version: 1.1.2.2533
GMSZoomTableQuadTree lacks root zoom table for tile type (mapType: 10)
GMSZoomTableQuadTree lacks root zoom table for tile type (mapType: 15)

知道什么可能导致这个问题吗?

4

5 回答 5

16

自己找到了解决方案。

我正在使用自动布局。显然,在-viewDidLoad自动布局中还没有完成它的工作,我GMSMapView仍然有一个 CGRectZero 框架。GMSMapView似乎对零帧的反应非常挑剔。

[self.view layoutIfNeeded];

在设置相机之前为我解决了这个问题。

于 2013-04-04T10:21:28.480 回答
16

这也可能是由于在您的 Google API 控制台的 API 密钥下没有输入正确的捆绑 ID。

于 2016-07-28T19:41:53.487 回答
4

以防万一有人来到这里没有任何效果......

我遇到了这个问题并且感到无聊,所以我取消缩放地图,发现我的位置搞砸了,我的地图中心在沙漠中间!地图工作得很好。

因此,请尝试取消缩放,以防万一。

于 2016-06-14T22:50:44.247 回答
1

如果您在 XCode 项目中同时包含GoogleMaps.frameworkGoogleMapsM4B.framework (Maps for Business),请删除GoogleMapsM4B.framework

否则,您需要通过企业支持门户启用Google Maps Mobile SDK for Work ,而不是通过Cloud Console启用适用于 iOS 的 Google Maps SDK 。

于 2019-01-15T07:21:31.353 回答
0

我也遇到了同样的问题。问题是我在代码中的 2 个不同位置使用了两个 iOS Api 密钥。请检查您是否使用了来自 google Api 控制台的正确 API 密钥(iOS 密钥) 。在您的应用程序中使用相同的密钥。

于 2016-05-26T11:24:21.593 回答