Moja aplikacja przesyła wideo na Facebooka. Chciałbym zakończyć przesyłanie w tle, nawet jeśli niecierpliwy użytkownik kliknie przycisk Strona główna podczas przesyłania.iOS - jak ukończyć długi proces w tle
Po pewnym czytania, to próbowałem:
UIBackgroundTaskIdentifier bti = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{
[[UIApplication sharedApplication] endBackgroundTask:bti];
}];
[fb requestWithGraphPath:@"me/videos"
andParams:params
andHttpMethod:@"POST"
andDelegate:self];
[[UIApplication sharedApplication] endBackgroundTask:bti];
Praca odbywa się metodą żądanie fb. Wideo jest przesyłane do Facebooka przez połączenie http. Działa to dobrze, ale jeśli tworzysz aplikację w tle, klikając przycisk Strona główna podczas przesyłania, przesyłanie jest zawieszone. Jeśli wybierzesz aplikację na pierwszym planie, przesyłanie zostanie wznowione.
Miałem nadzieję, że to się stanie, że ładowanie zakończy się w tle.
Czy jest jakaś nadzieja, że to zadziała? Czy robię coś złego z całą kwestią beginBackgroundTask? Wydaje się to zbyt proste, aby pracować w ten sposób, ale tak mówią doktorzy.
Każda pomoc, bardzo doceniane.
- John
@jhon muszę przesyłać filmy w tle. Czy mogę to zrobić pozwania tego bloku kodu? jest jakakolwiek szansa, że jabłko może odrzucić moją aplikację, ponieważ wykonywanie długiego procesu w tle ma ograniczenia –