【问题标题】:Google Maps iOS SDK Map Will Not Appear谷歌地图 iOS SDK 地图不会出现
【发布时间】:2018-10-18 23:44:25
【问题描述】:

我在 GMSMapView 上的地图呈棕褐色,从不出现。我已经尝试了互联网上的所有建议,包括:

三次检查我的 API 密钥并将它们设置如下(注意:GooglePlaces 确实工作):

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey : Any]? = nil) -> Bool {
    FBSDKApplicationDelegate.sharedInstance().application(application, didFinishLaunchingWithOptions: launchOptions)
    GMSPlacesClient.provideAPIKey("MY KEY")
    GMSServices.provideAPIKey("MY KEY")
    LocationService.sharedLocation.startUpdatingLocation()
    return true
}

我已启用 iOS SDK:

我已将 SDK 添加到凭据中:

我还三次检查了捆绑 ID 是否正确(同样,GooglePlaces确实有效)。

以下是我从 Google 网站获得的实现代码。

在我调用的 viewDidLoad 内部:

private func initializeMap() {
    let camera = GMSCameraPosition.camera(
        withLatitude: (currentLocation?.coordinate.latitude)!,
           longitude: (currentLocation?.coordinate.longitude)!,
                zoom: zoomLevel
    )
    let mapView = GMSMapView.map(withFrame: CGRect.zero, camera: camera)
    mapView.isMyLocationEnabled = true
    mapView.delegate = self
    self.view = mapView
}

然而地图并没有出现。还有其他想法吗?

【问题讨论】:

    标签: swift google-maps google-maps-sdk-ios


    【解决方案1】:

    在我的情况下,问题是我没有在 Google Cloud Platform 中启用 Maps SDK for iOS,因为入门页面的说明没有说明这一点。

    所以我在Apis & Services 页面启用了此功能(确保您选择了正确的项目),点击启用 APIS 和服务,然后选择“iOS 版 Maps SDK”,最后点击启用。

    如果问题是您的用户无权访问此 API,您可以按照以下说明授予它:https://cloud.google.com/endpoints/docs/openapi/enable-api

    【讨论】:

    【解决方案2】:

    我自己找到了问题的答案。我将 GoogleMaps 用作我的 SDK 和应用程序之间的共享 pod(就像我为 GooglePlaces 执行此操作一样)。由于某种不为人知的原因,可能是 Google API 中的错误,这会阻止它工作。当我只将 pod 移动到我的应用程序时,它可以工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-13
      • 2013-12-20
      相关资源
      最近更新 更多