调试和 WinRT 挂起事件:故障排除指南
使用 WinRT 开发 Windows Phone 8.1 应用程序有时会带来挑战。 一个常见问题是在调试会话期间未能触发挂起事件。让我们检查一个典型的代码片段并探索解决方案:
<code>public App() { ... Suspending += OnSuspending; } private void OnSuspending(object sender, SuspendingEventArgs e) { var deferral = e.SuspendingOperation.GetDeferral(); deferral.Complete(); }</code>
此代码注册 OnSuspending
方法来处理应用程序暂停。 但是,在调试过程中,该事件不会触发。 这是因为:
调试器防止暂停
Windows 调试器有意防止应用程序暂停,以确保流畅的调试体验。 此行为是设计使然。
测试暂停逻辑
要准确测试您的悬架操控性,您有两种选择:
无需调试即可运行: 只需在调试器之外运行您的应用程序即可。 这将允许系统正常挂起您的应用程序,从而触发 OnSuspending
事件。
Visual Studio 中的手动暂停: Visual Studio 的调试工具栏提供了模拟暂停的方法:
Debug
-> Debug Location
.重要调试注意事项
此调试限制可能会掩盖 OnSuspending
事件处理程序中的潜在问题。 此代码中的错误在调试期间可能不会显现出来。 始终在非调试环境中测试您的暂停逻辑以获得可靠的结果。 在调试器之外进行彻底的测试对于确保您的应用程序在挂起时正常运行至关重要。
以上是为什么我的 WinRT 应用程序的挂起事件在调试期间没有触发?的详细内容。更多信息请关注PHP中文网其他相关文章!