2016-06-08 66 views
1

有什麼方法可以檢測當前UWP 要退出? (用戶關閉或終止進程)如何檢測UWP退出

我想向服務器發送一些關於應用程序斷開連接的請求,也想在退出之前保存一些數據。

回答

3

無法檢測此類情況或阻止用戶終止您的應用。如果你想保存狀態或做退出前的東西,使用Suspending event

懸浮事件是您的應用程序將收到終止之前(如果發生)的唯一指示。因此,您應該存儲足夠的會話狀態(例如正在讀取的當前文章或當前電影播放位置)以在激活期間重新創建完全相同的體驗。內容創建應用程序的指導是儘早和經常保存用戶的工作,但也要在暫停期間提交最後一次保存。在暫停之前保存數據非常有用,因爲Suspending事件處理程序只有5秒鐘才能完成操作。

只記得時間有限。

其實還有一些將被解僱其他兩個事件(在移動的情況下,當用戶持有後退按鈕,去到任務切換):Window.VisibilityChangedWindows.Activated,但他們也發射時用戶更改應用程序,顯示提示等 - 並且無法區分這些情況。

+1

如果你可以放一些示例代碼,這將是非常有幫助的。 :-) – qakmak

+0

@qakmak什麼樣的代碼示例?沒有什麼特別的,只需訂閱* App.Current.Suspending *事件。 – Romasz

+0

代碼檢查它。我想知道你怎麼知道應用程序不只是改變到其他應用程序或去系統主頁,只是退出。我只是不知道如何使用可視性和激活來確認退出 – qakmak