Ok, więc szukałem na przykładzie projektu SimpleBackgroundFetch i wykorzystuje następujące w App Delegata:NSURLSession vs Tło Fetch
[[UIApplication sharedApplication] setMinimumBackgroundFetchInterval:someTimeInSeconds];
//^this code is in didFinishLaunchingWithOptions
-(void)application:(UIApplication *)application performFetchWithCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler
{
//do something + call completionHandler depending on new data/no data/fail
}
Więc zasadniczo I zakładamy, że zadzwonię serwer mojej aplikacji tutaj aby uzyskać trochę danych.
Ale wtedy ujrzałem NSURLSession docs, a on miał metody jak te
– downloadTaskWithURL:
i powiedział, co następuje:
Ten interfejs API zapewnia bogaty zestaw metod Delegat wspierania uwierzytelniania i daje Twojej aplikacji możliwość wykonywania pobierania w tle, gdy Twoja aplikacja nie jest uruchomiona lub, w iOS, gdy Twoja aplikacja jest zawieszona na .
Więc jaka jest różnica między tymi dwoma API? I co powinienem użyć, jeśli chcę od czasu do czasu pobierać niektóre dane z serwera mojej aplikacji?
Po prostu nie byłem pewien różnicy między tymi dwoma, więc pomyślałem, że powinienem wyjaśnić tutaj wątpliwości. Idź StackOverflow!
Oh ok, dzięki za wyjaśnienie, czasami dokumenty mogą być uciążliwe. Fraza "start/kontynuuj" pomogła mi to zrozumieć.Sądzę więc, że powinienem po prostu użyć stylu Delegowanie aplikacji/Pobieranie w tle. Dzięki! – GangstaGraham
Jeszcze tylko jedna rzecz. Te dwa nie są konieczne w połączeniu. Jeśli parametr _content dla user_ wymaga niewielkich żądań danych, takich jak niektóre aktualizacje kanałów, nie jest dobrze używać trybu _background_ dla NSURLSession. Tryb tła służy głównie do pobierania plików, a takie pobieranie może zostać wstrzymane przez system w razie potrzeby. – Tricertops
Dzięki za dodatkowe informacje. Doceniam to. To po prostu pobiera JSON z serwera, więc pobieranie tła jest w porządku, jak sądzę. – GangstaGraham