为什么Google PlacePicker pickPlace在EXC_BREAKPOINT Swift3 IOS10上崩溃

时间:2016-09-30 15:53:05

标签: ios google-places-api swift3

我将XCode升级到8.0版并开始将我的项目转换为Swift3。我使用PODS谷歌库,如GoogleMaps,GooglePlaces和GooglePlacePicker。就像你猜的那样,在更新之前,一切都像魅力一样。更新后有数百个需要解决的修复项目,这里没有什么特别的,我设法解决了它们,atlas现在。

项目中的基础平台是IOS 10。

问题是GooglePlacePicker刚停止工作,我只是无法弄清问题是什么。我在Iphone 6设备上运行它。 PickerView从未显示,并在短暂的超时程序崩溃并指向回调函数。在回调函数中你有什么并不重要。有人有任何线索吗?

请参阅此处的断点

enter image description here

我的代码:

    let center = place.coordinate
    let northEast = CLLocationCoordinate2DMake(center.latitude + 0.001, center.longitude + 0.001)
    let southWest = CLLocationCoordinate2DMake(center.latitude - 0.001, center.longitude - 0.001)
    let viewport = GMSCoordinateBounds(coordinate: northEast, coordinate: southWest)
    let config = GMSPlacePickerConfig(viewport: viewport)
    placePicker = GMSPlacePicker(config: config)


    placePicker?.pickPlace(callback: { (place: GMSPlace?, error: NSError?) -> Void in

    if let error = error {
            print("Pick Place error: \(error.localizedDescription)")
            return
        }

        if let place = place {
            print("Place name \(place.name)")
            print("Place address \(place.formattedAddress)")
            print("Place attributions \(place.attributions)")
        } else {
            print("No place selected")
        }
    } as! GMSPlaceResultCallback)

如果有任何建议,将不胜感激。而且我不认为它是API密钥,因为自动完成工作仍然有效。

1 个答案:

答案 0 :(得分:4)

更改错误类型(地点:GMSPlace?,错误:NSError?)

使用swift 3类型:错误?

希望对你有用