MapKit MobileGestalt.c:1647:无法检索区域信息

Rex*_*xha 8 mapkit swift swiftui

MapKit用来显示两个注释和它们之间的距离。一切正常,但我一直在控制台上收到此错误。 MobileGestalt.c:1647:无法检索区域信息 有人知道是什么原因造成的吗?可能是.plist文件中的某些权限

这是完整的控制台输出:

2019-11-10 00:21:41.419108+0100 Post DACH[20420:264466] Metal API Validation Enabled 2019-11-10 00:21:41.567416+0100 Post DACH[20420:264466] libMobileGestalt MobileGestalt.c:1647: Could not retrieve region info

截屏

我的代码:

struct MapView: UIViewRepresentable {
    var requestLocation: CLLocationCoordinate2D
    var destinationLocation: CLLocationCoordinate2D
    private let mapView = WrappableMapView()

    func makeUIView(context: UIViewRepresentableContext<MapView>) -> MKMapView {
        mapView.delegate = mapView
        return mapView
    }

    func updateUIView(_ uiView: MKMapView, context: UIViewRepresentableContext<MapView>) {
        let requestAnnotation = MKPointAnnotation()
        requestAnnotation.coordinate = requestLocation
        requestAnnotation.title = "Package"
        uiView.addAnnotation(requestAnnotation)

        let destinationAnnotation = MKPointAnnotation()
        destinationAnnotation.coordinate = destinationLocation
        destinationAnnotation.title = "Destiantion"
        uiView.addAnnotation(destinationAnnotation)

        let sourcePlacemark = MKPlacemark(coordinate: requestLocation)
        let destinationPlacemark = MKPlacemark(coordinate: destinationLocation)

        let directionRequest = MKDirections.Request()
        directionRequest.source = MKMapItem(placemark: sourcePlacemark)
        directionRequest.destination = MKMapItem(placemark: destinationPlacemark)
        directionRequest.transportType = .automobile

        let directions = MKDirections(request: directionRequest)

        directions.calculate { (response, error) in
            guard let directionResponse = response else {
                if let error = error {
                    print(error.localizedDescription)
                }
                return
            }

            let route = directionResponse.routes[0]
            uiView.addOverlay(route.polyline, level: .aboveRoads)
            let rect: MKMapRect = route.polyline.boundingMapRect

            uiView.setVisibleMapRect(rect, edgePadding: .init(top: 50.0, left: 50.0, bottom: 50.0, right: 50.0), animated: true)
        }

    }
}
Run Code Online (Sandbox Code Playgroud)

小智 -2

我通过添加解决了该问题delegate

  • 可以通过添加具体示例并解释如何或为何添加委托来解决问题来改进此答案。 (18认同)