withContentsofURL можно объявить лимит времени ожидания? - PullRequest
0 голосов
/ 18 октября 2011

У меня есть приложение с динамическими данными, и метод обновления использует arrayWithContentsofURL и dictionaryWithContentsofURL для получения списков с сервера для обновления моей базы данных.

Моя проблема:

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

Есть ли способ установить таймаут для этой функции?

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

1 Ответ

2 голосов
/ 18 октября 2011

По моему мнению, лучше использовать NSMutableURLRequest с ним.

Который имеет - (void)setTimeoutInterval метод. Из документации:

Интервал времени ожидания в секундах. Если во время попытки подключения запрос остается бездействующим дольше, чем интервал ожидания, запрос считается истекшим. Интервал ожидания по умолчанию составляет 60 секунд.

Предлагаем использовать NSURLRequest для отправки объекта запроса. Его функции делегата вернут вам список.

Вы можете взять этот пример, примерно на половине этой страницы он загружает объект json почти так же, как вы можете получить список.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...