我想一個方法在後臺工作,直到用戶指定的持續時間很長一段時間(比方說20分鐘)爲止。我知道這是不可能的,因爲Apple允許應用在後臺最多工作10分鐘。不幸的是,FireDate僅適用於UILocalNotification
。我也讀了performSelector:Selector:WithObject:afterDelay:
方法,但我不確定這是否會在後臺工作。請給我suggesstions和代碼片段(如果有的話)。做的工作,需要在應用程序已經轉到後臺
回答
兩個方法,將使用:
NSObject-(void)performSelectorInBackground:(SEL)aSelector withObject:(id)arg
UIApplication - (UIBackgroundTaskIdentifier)beginBackgroundTaskWithExpirationHandler:(void(^)(void))handler
本地通知可以,如果你希望用戶重新啓動被使用,但如果他們不這樣做通過點擊應用程序,那麼你的應用程序從來不知道它
感謝您的回覆,我確切地知道你提到「beginBackgroundTaskWithExpirationHandler」第二種方法,它不接受我們的應用留在後臺超過10分鐘,所以不是我的使用,因爲在我的用戶也可以給60分鐘!我不確定performSelectorInBackground,它會工作,如果我的應用程序被用戶終止? – Wasim 2011-06-07 02:27:41
還有一件事要問,是否在performSelectorInBackground允許參數傳遞的選擇器(這將是我的自定義方法)? – Wasim 2011-06-07 02:32:12
的performSelector方法運行你的後臺進程的方法,你_can_傳遞給它一個參數 - 第二個需要被調用,可能對郵件線程,當你啓動的後臺進程,像你說的,他們估計10分鐘後,但是不能保證它會這麼長時間,或者他們在某個時候不會允許更多 - 需要跑一個小時的東西似乎是可疑的,你確定沒有更好的解決方案(比你的蠻力希望?) – bshirley 2011-06-07 02:50:49
- 1. 應用程序不在後臺工作
- 2. 我需要使我的應用程序在後臺工作,即使它關閉
- 3. 鍵盤在應用程序已經在後臺後沒有收到水龍頭
- 4. 後臺應用程序不工作
- 5. 我需要將Symbian應用程序運行到後臺
- 6. White如何在已經運行的應用程序上工作?
- 7. 應用程序在後臺工作時無法正常工作
- 8. 停止後臺服務當應用程序轉到後臺
- 9. Swift 3:刷新應用程序後,它已經在後臺,如何?
- 10. PetaPoco「已經是公開的DataReader」在控制檯應用程序
- 11. (iOS版MPMusicPlayerNotification)如何,即使應用程序轉到後臺時收到通知應用程序在後臺
- 12. Android的 - 如何知道什麼時候應用程序已經在後臺
- 13. 需要使用後臺工作進程發送電子郵件
- 14. 如何在應用程序已經在後臺運行時跳過splashscreen
- 15. 需要應用程序URL從控制檯應用程序
- 16. 無法運行Apache:需要找出哪臺應用程序已經在我的機器上使用端口80
- 17. 我的應用程序只在後臺工作ios 10
- 18. 只在後臺工作的應用程序iPhone
- 19. 如何讓我的應用程序在後臺工作?
- 20. Qt需要將Qt應用程序從win32應用程序調用到前臺
- 21. 在WPF應用程序中正確使用後臺工作
- 22. C#應用程序打在已經運行的應用程序
- 23. WaitForExit不工作時,應用程序已經運行
- 24. 做預定的後臺工作在asp.net
- 25. Python的Web應用程序與後臺工作線程
- 26. ASP.NET應用程序的後臺作業
- 27. Winforms線程應用程序掛起(後臺工作線程)
- 28. 應用程序轉到後臺時應調用哪種方法?
- 29. 需要Android應用程序的工作流程創意
- 30. 部署新戰爭後應用程序工作臺控制檯無法工作
什麼類型的處理,你看在後臺做什麼? – Blounty 2011-06-05 20:34:34
你使用4.x嗎? – bshirley 2011-06-05 20:42:26
你的問題到底是什麼?我看到很多對話,但在任何地方都沒有問號。 (另請注意,「double dot」'..'不是英文的標點符號。) – 2011-06-05 21:10:21