Получение данных с веб-сервера в фоновом режиме в target-C - PullRequest
1 голос
/ 23 марта 2012

Я хочу создать одно приложение для iPhone, которое будет получать данные с веб-сервера после каждого определенного промежутка времени. даже если приложение работает в фоновом режиме.

Я пытаюсь получить данные после каждого временного интервала perticuler. но когда приложение идет в фоновом режиме. NStimer не может провести мероприятие. и я не могу позвонить в веб-сервис.

У меня также есть возможность вызова веб-службы с использованием Grand Central Dispatch (GCD) с использованием следующего кода

NSTimeInterval delay_in_seconds = 3.0;
dispatch_time_t delay = dispatch_time(DISPATCH_TIME_NOW, delay_in_seconds * NSEC_PER_SEC);
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);

dispatch_after(delay, queue, ^{
    // perform your background tasks here. It's a block, so variables available in the calling method can be referenced here.


    // now dispatch a new block on the main thread, to update our UI
    dispatch_async(dispatch_get_main_queue(), ^{

        [self setBackgoundProcess];

    });
});

Но я все еще не могу получить данные. Не работает, когда приложение работает в фоновом режиме.

Есть ли в iPhone какая-нибудь сыворотка для вызова веб-службы в фоновом режиме

Спасибо заранее.

1 Ответ

0 голосов
/ 23 марта 2012

Взгляните на этот Руководство по программированию приложений для iOS , раздел Фоновое выполнение и многозадачность .По сути, вы можете указать, что ваше приложение должно работать в фоновом режиме (оно будет работать до тех пор, пока iOS не убьет его из-за недостатка памяти), или вы можете указать, что вам нужно выполнить конечную задачу, когда приложение входит в фоновый режим (угадайте в первом случаебольше соответствует вашим потребностям)

...