2016-07-08 3 views
1

Я уже googled, но не нашел ясного ответа. Когда вызывается «didFailLoadWithError»? Я хочу использовать его, чтобы показывать предупреждение, когда нет подключения к Интернету. Это правильный путь?Звоните «didFailLoadWithError», когда нет подключения к интернету?

Это приложение для iOS, сделанное с помощью Xcode и Swift.

+0

уа правильные, все тоже –

ответ

2

didFailLoadWithError метод будет вызван в следующих условиях:

  1. Если URL перенаправления на другой URL, мы получим NSURLErrorCancelled ошибку.
  2. Если на странице есть ссылки на AppStore, нажатие ссылки вернет ошибку (но ссылка AppStore по-прежнему будет обрабатываться iOS).
  3. Если URL-адрес является прямой ссылкой на видео/аудио, мы получим сообщение об ошибке («Загрузка с подключаемым модулем»), даже если воспроизводится видео/аудио.

Таким образом, лучшим решением для проверки сети является использование кода apple Reachability.

Update:

Лучшее решение для проверки подключения к Интернету (Wi-Fi и сотовой связи) является: [Reachability Swift 2] [2]

+0

Спасибо за ваш ответ. 'didFailLoadWithError' также, похоже, вызывается при нажатии гиперссылки при загрузке другой ссылки. Поэтому я не запираюсь. Коэффициент достижимости кажется правильным. Но это только для Objective-C. Нет ли версии Swift? –

+0

Для быстрой попытки это http://www.brianjcoleman.com/tutorial-check-for-internet-connection-in-swift/ – Palanichamy

+0

Спасибо. Это удивительно. Это действительно работает и очень просто. Я добавил код в "webViewDidStartLoad". Это означает, что он всегда будет проверять подключение к Интернету при нажатии гиперссылки или так далее. Считаете ли вы, что это разумно? –

Смежные вопросы