偵錯 WinRT 應用:為什麼掛起事件可能不會觸發
Suspending
事件對於 Windows Phone 8.1 應用程式至關重要,它可以在暫停之前保存狀態。 但在調試過程中,該事件可能不會觸發,導致測試困難。
考慮這個例子:
<code class="language-csharp">/// <summary> /// Initializes the singleton application object. /// </summary> public App() { ... Suspending += OnSuspending; } /// <summary> /// Suspend handling method. /// </summary> private void OnSuspending(object sender, SuspendingEventArgs e) { var deferral = e.SuspendingOperation.GetDeferral(); deferral.Complete(); }</code>
OnSuspending
中的斷點在偵錯過程中保持不變。這是預料之中的; Suspending
事件專為非調試暫停場景而設計。
調試和暫停:仔細觀察
Windows Phone 8.1 會阻止在偵錯時觸發 Suspending
事件,以維護應用程式活動以供檢查。 這需要替代的測試方法。
要模擬暫停,請使用 Visual Studio 的「偵錯位置」工具列。 從生命週期事件下拉清單中選擇“暫停”以手動觸發事件。 調整後,選擇“恢復”以恢復應用程式執行。 這允許在不部署應用程式的情況下測試暫停處理邏輯。
有效的暫停測試策略
徹底的懸浮處理測試需要非調試環境。部署到模擬器或實體設備模擬現實世界的暫停和恢復,驗證應用程式在這些條件下的行為。
以上是為什麼我的 WinRT 應用程式的掛起事件在偵錯期間沒有觸發?的詳細內容。更多資訊請關注PHP中文網其他相關文章!