回答
如果使用NSURLConnection
,你可以使用一個UIBackgroundTaskIdentifier
,以保持您的連接活着即使該應用程序發送到後臺:
聲明你的後臺任務標識符,這樣你就可以在任何地方訪問它的類實現,例如在您.m文件的頂部:
@implementation MyClass {
UIBackgroundTaskIdentifier backgroundTaskID;
}
創建連接:
NSURLRequest *request = [NSURLRequest requestWithURL: aURL];
NSURLConnection *uploadConnection = [NSURLConnection connectionWithRequest:request delegate:self];
backgroundTaskID = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:^{
// Cancel the connection in case of expiration
[uploadConnection cancel];
}];
結束你的後臺任務在這兩種方法NSURLConnectionDelegate
連接結束後/失敗:
- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error {
// Handle a fail
[[UIApplication sharedApplication] endBackgroundTask:backgroundTaskID];
}
- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
// Handle a success
[[UIApplication sharedApplication] endBackgroundTask:backgroundTaskID];
}
我們是否需要爲此設置任何UIBackgroundModes? –
不是100%可靠的答案,但我很肯定你不需要。 – rdurand
我也這麼認爲,但我只是爲一個客戶做了這個,他說如果他去背景上傳仍然失敗..反正TNN –
- 1. iOS聊天應用程序如何在後臺繼續運行?
- 2. 繼續在後臺上傳
- 3. 如何在iOS中終止應用程序後在後臺繼續下載
- 4. iOS應用程序在App Store更新後是否繼續在後臺運行?
- 5. 如何使廣播應用程序繼續在iOS應用程序的後臺播放?
- 6. 如何在後臺繼續在iOS上運行位置更新
- 7. 爲什麼我的iPhone應用程序在後臺繼續?
- 8. 如何在iOS中創建後臺線程,在應用程序已被隱藏後繼續下一步
- 9. Android:繼續在後臺運行應用程序
- 10. iOS使AVPlayer繼續在後臺播放
- 11. 如何讓應用程序在後臺運行?繼續收集數據?
- 12. 需要youtube音頻繼續播放時,iOS應用程序進入後臺
- 13. 如何在後臺繼續在前臺繼續使用NSURLConnection開始連接?
- 14. 如何在後臺繼續運行python程序
- 15. MPMusicPlayerController在後臺暫停並在應用程序進入前臺時繼續
- 16. 當應用程序轉到後臺時繼續運行NSOperationQueue
- 17. 當應用程序進入後臺時繼續下載
- 18. 如何讓應用程序在退出後繼續運行?
- 19. 在後臺運行iOS應用程序
- 20. IOS CancelNotificaion當應用程序在後臺
- 21. iOS應用程序在後臺
- 22. 如何在終止ssh後繼續在Raspberry Pi的後臺運行Python程序
- 23. 如何讓流星手機應用繼續在後臺運行?
- 24. pyinstaller程序在關閉後繼續在後臺運行
- 25. 如何連續運行應用程序而不掛在後臺
- 26. 在後臺繼續下載
- 27. 我將應用程序推入後臺後,如何繼續接收通過NSLog()發送的控制檯信息?
- 28. 如何將ios應用程序從後臺前臺
- 29. 如何在iOS應用程序處於後臺時調用Method?
- 30. 即使應用程序退出後,如何使用UIAutomation儀器繼續測試iOS應用程序?
短語「駁回」的意思是_terminated_或去_background_? – holex
@holex去背景。 – user3374800
@ user3374800:我的答案有什麼好運? – rdurand