2013-02-08 17 views
0

我正在将html5游戏移植到win8。为了保存游戏状态,我在window.unload中调用了一个函数save_game(它使用localStorage来存储一些数据),这当然在这里不起作用。所以我用WinJS.Application.oncheckpoint代替。奇怪的是,如果我启动游戏并按alt-f4,游戏状态不会保存。在事件处理程序中使用console.log在VS中进行调试时,我发现它只有在恢复应用程序时才会触发。奇怪的是,如果我在代码中放置了一个断点,那么事件处理程序将在暂停期间正确执行。窗口8 JavaScript应用程序oncheckpoint不起作用

任何人都知道为什么会发生这种情况?这是win8中的错误吗?

在此先感谢。

回答

3

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

+0

是的,当调试我实际上只是使用挂起和恢复选项,它似乎只有在我没有设置断点后恢复应用程序触发console.log。 – rYttrium 2013-02-10 13:12:12

相关问题