Метод делегата mapViewDidFailLoadingMap вызывается с ошибкой == 0

StackOverflow https://stackoverflow.com/questions/1857958

  •  13-09-2019
  •  | 
  •  

Вопрос

В моем контроллере представления я создаю объект MKMapView.Я установил делегата на себя и в ViewController реализовал:

- (void)mapViewDidFailLoadingMap:(MKMapView *)mapView withError:(NSError *)error 

Этот метод вызывается, но в отладчике я вижу это error имеет значение 0x0

Это происходит и на устройстве, и в симуляторе.

Мне нужен код ошибки, так как я хочу выдать сообщение в случае, когда доступ в Интернет недоступен, игнорируя при этом такие случаи, как (из документа API) «если поступает запрос на дополнительные фрагменты карты, в то время как предыдущий запрос на фрагменты все еще в ожидании» (что мне не кажется провалом)

Это было полезно?

Решение

Я только что провел небольшое тестирование.

  1. Интернет отключен:[описание ошибки] = Error Domain=NSURLErrorDomain Code=-1009 UserInfo=0x46c6120 «нет подключения к Интернету»
  2. Прокрутка слишком быстрая:ошибка = ноль (0x0)

Я не знаю, есть ли какие-либо другие ошибки, но, по крайней мере, вы можете отличить ошибку подключения к Интернету (в этом случае я покажу предупреждение) и случай слишком быстрой прокрутки, в котором я просто проигнорирую ее.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top