Windows 8 JavaScript应用程序oncheckpoint不工作

Windows 8 JavaScript应用程序oncheckpoint不工作,javascript,windows-8,Javascript,Windows 8,我正在将html5游戏移植到win8。为了保存游戏状态,我在窗口中调用了一个函数save\u game(它使用本地存储来存储一些数据)。卸载,这在这里当然不起作用。因此,我改用WinJS.Application.oncheckpoint。奇怪的是,如果我启动一个游戏并按下alt-f4,游戏状态就不会保存。在VS中使用console.log在事件处理程序中调试时,我发现它似乎只有在我恢复应用程序时才会被触发。奇怪的是,如果我在代码中添加断点,那么事件处理程序将在挂起期间正确执行 有人知道为什么会这

我正在将html5游戏移植到win8。为了保存游戏状态,我在
窗口中调用了一个函数
save\u game
(它使用本地存储来存储一些数据)。卸载
,这在这里当然不起作用。因此,我改用
WinJS.Application.oncheckpoint
。奇怪的是,如果我启动一个游戏并按下
alt-f4
,游戏状态就不会保存。在VS中使用
console.log
在事件处理程序中调试时,我发现它似乎只有在我恢复应用程序时才会被触发。奇怪的是,如果我在代码中添加断点,那么事件处理程序将在挂起期间正确执行

有人知道为什么会这样吗?这是win8中的错误吗


提前感谢。

在调试应用程序时,您会看到已知的行为,而当您通过用户操作(Alt-F4/顶部滑动)关闭应用程序时,调试器实际上会将应用程序打开一段时间。如果在oncheckpoint、debug app中设置断点,按Alt-F4,然后等待约5秒钟,您将到达断点。模拟用户“关闭”事件的最佳方法是使用VS中的挂起和关闭选项,该选项将在检查点立即触发。

在使用VS调试应用程序时,您会看到已知的行为。当您通过用户操作(Alt-F4/顶部滑动)关闭应用程序时,该应用程序实际上会被调试器打开一段时间。如果在oncheckpoint、debug app中设置断点,按Alt-F4,然后等待约5秒钟,您将到达断点。模拟用户“关闭”事件的最佳方法是在VS中使用Suspend and Shutdown选项,该选项将在检查点时立即触发。

是,在调试时,我实际上只使用了Suspend and resume选项,如果我没有设置断点,则只有在我恢复应用程序后才会触发console.log。是的,在调试时,我实际上只使用了suspend和resume选项,如果我没有设置断点,则只有在我恢复应用程序后才会触发console.log。