Ошибка: «подключение к службе с именем com.apple.MapKit.SnapshotService» при запуске MKMapSnapshotter - PullRequest
4 голосов
/ 28 мая 2019

Я пытаюсь создать снимок моего вида карты, который будет отображаться позже, поэтому у меня нет другого вида карты, который тратит память.

Большую часть времени он работает просто отлично, но недавно я попытался создать снимок Парижа и получил сообщение об ошибке: «подключение к службе с именем com.apple.MapKit.SnapshotService».

Я знаю, что это похоже на вырезанную деталь, но нет, похоже, это и есть полное описание ошибки.

Полная ошибка:

Ошибка домена = код MKErrorDomain = 1 "(ноль)" UserInfo =. {NSUnderlyingError = 0x284562610 {Ошибка домена = NSCocoaErrorDomain Code = 4097 "подключение к службе с именем com.apple.MapKit.SnapshotService" UserInfo = {NSDebugDescription = подключение к службе с именем com.apple.MapKit.SnapshotService}}} * 1010 Я пробовал несколько раз, но кажется, что при съемке Парижа это просто не получится, как в других городах. Я действительно понятия не имел, где я мог бы начать решать проблему, так как я не нашел никакой информации о происхождении моей ошибки.

РЕДАКТИРОВАТЬ: поведение на самом деле кажется случайным и в других городах.

В viewDidLoad я инициализирую свой объект параметров следующим образом:

snapShotOptions.size = mapView.frame.size
snapShotOptions.scale = UIScreen.main.scale
snapShotOptions.showsBuildings = false

Когда пользователь теперь решает продолжить, я инициализирую и запускаю моментальный снимок и соответствующим образом обрабатываю данные, перед этим я также устанавливаю регион для снимка:

snapShotOptions.region = mapView.region
snapShotter = MKMapSnapshotter(options: snapShotOptions)

// Take a snapshot.
snapShotter.start { (snapshot, error) -> Void in
    if error == nil {
        completionHandler(snapshot?.image ?? UIImage())
    } else {
        print(error!)
    }
}

Я надеюсь, что кто-то может помочь мне здесь или, по крайней мере, дать мне понять, что на самом деле означает ошибка!

...