我正在開發一個應用程序,我希望它能夠在固定時間間隔內完成動作,即使應用程序已關閉,也可以在5分鐘內完成。固定時間間隔內的IOS日程安排動作
回答
有沒有爲您的應用程序來安排本身如果封閉運行方式(即終止)
如果它在後臺仍無法安排自己在一個固定的時間間隔運行,但它可以響應某些外部事件並根據操作系統的判斷運行。
您可以在應用程序關閉前發佈多個本地通知,然後如果用戶點擊一個,然後您的應用程序將運行。但是,每5分鐘發佈一次通知給用戶將是一件非常糟糕的事情,可能會導致該應用被應用商店拒絕。
如果您有一個低頻頻率,這是不規則但不規則的,有一定的選項,如本地通知和推送通知和背景獲取。但是5分鐘時間很短,所以完全沒有辦法解決問題。
總之有: 一個)絕對在定期方式調度在後臺的東西(所有的替代物是不規則的任何方式:局部推依賴於用戶輸入,遠程推依賴於通知的傳送時間;背景提取取決於當OS決定將執行你的應用程序等。在等 b)調度不規則的東西一頻繁基礎上,是根本不可能的
首先,應用程序運行時在前臺即可使用NSTimer在特定時間間隔後執行一組操作。 其次,當應用程序在後臺運行,你不能做各種操作,但是你可以做下面的事情,
- 播放音頻
- VOIP服務
- 獲取來自網絡的內容定期 基礎上。
- 使用遠程通知作爲信號下載可從網絡獲取的新內容 。
最後兩個背景模式可以在後臺啓動或恢復您的應用程序並執行所需的操作。但是,除了每種背景模式預期的操作之外的任何操作都會導致應用商店拒絕。所以,如果你運行在任何這些適合你是好去,
欲瞭解更多信息,你可以看看這個鏈接下背景模式https://developer.apple.com/library/ios/documentation/general/Reference/InfoPlistKeyReference/Articles/iPhoneOSKeys.html
「最後兩個背景模式可以在後臺啓動或恢復您的應用程序並執行所需的操作。因此,如果您的操作符合其中任何一種,您就可以輕鬆完成操作。」您無法定期獲取內容 - 這是操作系統決定您的應用程序何時運行,而不是您,您無法控制此操作,您可以指示您希望的頻率,但操作系統決定,並且它肯定不會跑5分鐘。每5分鐘發送一次遠程推送過多,可能會讓你的應用服務器被蘋果推送服務器拒絕。 – Gruntcakes
- 1. 在固定的時間間隔
- 2. 在iOS中調用特定時間間隔的動作
- 3. 在某個固定的時間間隔內檢索數據
- 4. 如何在固定時間間隔內運行magento中的cron.php
- 5. 安排多個非定期非固定間隔事件
- 6. 以固定間隔
- 7. 如何在固定的時間間隔後滑動文本
- 8. 如何安排以多個時間間隔運行的作業
- 9. 以固定時間間隔更改內容的動畫延遲屬性
- 10. 日期時間間隔在JodaTime內?
- 11. 每天在用戶配置的時間間隔內安排SQL作業
- 12. 如何確保定時記錄在固定的時間間隔?
- 13. 無法使horizontalSlider以固定時間間隔滑動
- 14. 固定時間間隔後重新啓動Windows服務
- 15. 按時間間隔每週安排一次工作
- 16. 確定24小時日期時間是否在間隔內
- 17. MySQL日期時間間隔不工作
- 18. 如何在固定時間間隔內調用方法(無線程)
- 19. MooTools定期動畫的時間安排
- 20. 在設定的時間間隔內調用QCoreApplications.processEvents()是否安全?
- 21. 的R - 序列與固定的時間間隔增加的間隔
- 22. 在給定的時間間隔內重新啓動html5動畫
- 23. 什麼變量在特定的固定時間間隔內保持真實?
- 24. 固結間隔
- 25. 設定的時間間隔不工作
- 26. 日曆 - 時間間隔
- 27. SQL日期時間間隔
- 28. 啓動在指定的時間間隔
- 29. 將XYPlot的日期軸縮放到一個固定的時間間隔
- 30. 鈦:如何在特定的日期時間安排活動
您可以使用[performSelector:withObject:afterDelay:(HTTP: //www.pawapps.com/2011/08/06/quick-code-performselectorwithobjectafterdelay/)來安排行動,但我認爲這是不可能的,當應用程序關閉。 – Daniel
可能的重複:http://stackoverflow.com/questions/6245763/ios-timed-background-processing –
謝謝,但有什麼其他方式來安排它時,應用程序關閉? –