Google Maps API(GMS)地图无法显示

时间:2016-09-07 20:53:41

标签: ios swift google-maps gmsmapview

我试图让地图自动跟随用户(位置),但不知何故应用程序崩溃(没有错误消息)或地图在我启动应用程序时不显示。我做错了什么?

我试过没有locationManager func,然后它确实有效。还有其他方法可以关注用户吗?

{{1}}

当我启动它时它看起来像这样,然后它一直闪烁着地图(在用户位置)。

4 个答案:

答案 0 :(得分:2)

检查这些事情: -

  • 您已将GMSMapview @IBOutlet 的代理设置为自我

           mapView.delegate = self
    
  • 您已使用特定密钥

  • 更新了info.plist文件
  • 您有正确的互联网连接。
  • 您已在AppDelegate

    中配置了Google地图
        var googleApiKey = String(_yourAPIkey)  
        GMSServices.provideAPIKey(googleApiKey)
    

答案 1 :(得分:1)

我认为最好的方法是使用键值观察(KVO):

override func viewWillAppear(animated: Bool) {
    mapView.addObserver(self, forKeyPath: "myLocation", options:0, context:nil)
}

deinit {
    mapView.removeObserver(self, forKeyPath:"myLocation", context:0)
}

override func observeValueForKeyPath(keyPath: String?, ofObject object: AnyObject?, change: [String : AnyObject]?, context: UnsafeMutablePointer<Void>) {
    if(keyPath! == "myLocation"]) {
        let location = [object myLocation]

        let target =
        CLLocationCoordinate2DMake(location.coordinate.latitude, location.coordinate.longitude);

        mapView.animateToLocation(target)
        mapView.animateToZoom(17)
    }
}

答案 2 :(得分:0)

Google map

似乎谷歌地图没有出现在你的视图中。我想你想获得像图像一样的视图。

因此,我建议您下载 Google地图SDK 版本 1.10以下,因为我遇到此问题的次数太多了。

我建议您从下面链接下载谷歌地图SDK 1.9.1 以获取谷歌地图

https://developers.google.com/maps/documentation/ios-sdk/releases

尝试使用版本1.9.1 一次。希望这件事有效

注意:如果您想使用Google地图自动填写和其他新服务,请使用更高版本的Google地图SDK

答案 3 :(得分:0)

有同样的问题。 通过获取新的API密钥来修复。 我发现,您需要两个密钥:一个用于Google地方信息,一个用于Google地图。至少是为了测试目的。

在Google文档中,它没有提及。