iOS 13 MapKit: MKMapItem.pointOfInterestКатегория равна нулю? - PullRequest
1 голос
/ 09 июня 2019

Я пытаюсь получить MKMapItem.pointOfInterestCategory на бета-версии iOS 13 с помощью этого модульного теста:

func testPointOfInterests() {

    let request = MKLocalSearch.Request()
    let mkSearchExpectation = expectation(description: "MKLocalSearch")

    // Sagrada Família, Barcelone
    let coordinate = CLLocationCoordinate2D(latitude: 41.40359499, longitude: 2.17436157)
    request.region = MKCoordinateRegion.init(center: coordinate, latitudinalMeters: 1000, longitudinalMeters: 1000)
    request.naturalLanguageQuery = "Sagrada Família"
    if #available(iOS 13.0, *) {
        request.pointOfInterestFilter = MKPointOfInterestFilter(excluding: [.atm])
    }
    let search = MKLocalSearch(request: request)
    search.start { (response, error) in
        mkSearchExpectation.fulfill()
        XCTAssertNil(error)
        XCTAssertNotNil(response)
        guard let response = response else {
            return
        }

        for mapItem in response.mapItems {
            dump(mapItem)
            if #available(iOS 13.0, *) {
                if let category = mapItem.pointOfInterestCategory {
                    print(category)
                }
            }
        }


    }

    waitForExpectations(timeout: 10.0) {
        error in
        if let error = error {
            XCTFail(error.localizedDescription)
        }
    }

}

Я получаю соответствующий mapItem, но MKMapItem.pointOfInterestCategory равен nil.

ПохожийТест с использованием приложения Apples Maps показывает, что серверы Apple знают, что церковь Святого Семейства в Барселоне - это церковь.

Что я делаю не так?Мне бы хотелось, чтобы pointOfInterestCategory работала на iOS 13 beta.

...