每當用戶殺死我的應用程序時,我的應用程序都會收到通知(不會將其移至背景,但通過雙擊主屏幕按鈕並向上滑動屏幕截圖實際完全退出),這一點非常重要。我知道applicationWillTerminate()
幾乎沒有被調用,所以我想知道什麼最安全的方式是當用戶將殺死應用程序通知。 Apple似乎不太可能爲此提供任何形式的解決方案,因爲許多iOS用戶在完成使用它的應用程序後會自行殺死應用程序,所以如果它真的會真的真的很奇怪不可能趕上這個事件。我需要做的唯一事情就是發送一個URLRequest
發送一些更新指令到我的web服務。當應用程序被殺時向Web服務發送請求? (Swift 3)
0
A
回答
0
當我添加一個觀察者來處理UIApplicationWillTerminateNotification時,我獲得了更多的一致性。當用戶雙擊主頁按鈕並輕掃應用程序以殺死它時,它會被調用。
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool
{
NSNotificationCenter.defaultCenter().addObserver(self, selector:#selector(AppDelegate.onAppWillTerminate(_:)), name:UIApplicationWillTerminateNotification, object:nil)
return true
}
func onAppWillTerminate(notification:NSNotification)
{
print("onAppWillTerminate")
}
+1
哇,它的工作!我不明白。如果'NSNotification'有一個應用程序終止通知,那麼applicationWillTerminate()幾乎不會被調用(主要是永遠不會)? Apple爲什麼不在AppDelegate中實現委託方法而不是使用此通知?無論如何,非常感謝!當我讀到你的答案時,我並不十分有信心它會奏效,因爲每個人都告訴我很久以後,趕上'應用程序關閉'事件是不可能的。你的回答證明了很多人的錯誤。令人驚喜的是,這有一個解決方法。再次感謝! –
+0
不客氣!樂於幫助! :) –
相關問題
- 1. 確保向Web服務發送請求
- 2. 當應用程序在後臺發送請求到服務器
- 3. 當iOS應用程序被殺時,Gcm未發送到apn
- 4. 當應用程序被殺時Xamarin表單背景服務被殺害
- 5. 從Web服務器向CGI/FastCGI流程發送HTTP請求
- 6. Wso2 ESB - 同時向Web服務發送多個請求
- 7. 向遠程Web服務發送SOAP請求並使用apache獲取響應Camel
- 8. 發送多個Ajax請求web服務
- 9. 如何在iPhone應用程序中向服務器發送http發佈請求?
- 10. 在Nativescript應用程序的服務器上發送http.patch請求
- 11. 向WCF服務發送請求時出現錯誤的請求?
- 12. 當我嘗試向服務器發送請求時,我的應用崩潰了
- 13. 使用apache http客戶端向SOAP web服務發送請求
- 14. 向web服務發出POST請求
- 15. 如何從應用程序服務器向GCM服務器發送發送註冊請求以註冊設備?
- 16. 從MVC3應用程序發送服務請求
- 17. 向PHP發送HTTP POST請求時發出空數組請求來自Swift應用程序
- 18. 從Dot Net應用程序發送MTOM請求到AXIS2 Web服務
- 19. IOS應用程序:不斷向Web服務器發送數據
- 20. SAP向HTTPS請求發送REST服務
- 21. 向服務器發送多個請求
- 22. 向服務器發送大量請求
- 23. Ajax向Jax-rs服務發送請求
- 24. 向服務器發送請求兩次
- 25. 向服務器發送POST請求
- 26. 應用程序池回收後Web服務請求超時
- 27. 當應用程序在後臺時發送http請求
- 28. 當應用程序關閉時發送ajax請求
- 29. 應用程序被殺後保持活着意向服務
- 30. 如何在向wcf服務發出請求時觸發mvc應用程序?
您可以嘗試攔截SIG_KILL或SIG_TERM信號,這兩個信號中的一個會在被殺死時發送給應用程序。然而,不知道你的應用是否能夠在當前生命週期中做很多事情(接近其結束時) – Cristik
@Cristik我想是值得一試的。我怎麼做? –