Windows Phone XNA游戏在WP7.x上可见指南时挂起

我的Windows Phone XNA游戏调用Guide.BeginShowKeyboardInput来获取用户名。 在显示指南的输入屏幕的同时,如果用户按下主页或搜索(硬件)按钮,则游戏将像往常一样被停用 - 但如果用户按下后退(硬件)按钮,游戏应该继续,但不会。 相反,它会显示“正在恢复...”消息,直到Windows Phone放弃尝试恢复游戏并杀死该进程。

请注意:

  • 我的应用程序因为这个问题而失败了微软认证 - 我真的需要修复它!
  • 只有在显示指南输入屏幕时,才会发生在我的游戏中 - 当游戏未显示时,游戏在停用后恢复正常。
  • 只有在WP7.x上运行游戏时才会出现此问题(在WP7.5和WP7.8上已验证问题) - 虽然游戏似乎在WP8设备上正常恢复。
  • 我创建了一个空白的XNA游戏项目,名为Guide.BeginShowKeyboardInput并使用WP7.x设备对其进行测试,并且不会出现此问题行为。
  • 我已经测试了游戏,但未启用音乐和我的试用许可证管理器(他们使用定时器),但它仍然会这样做。
  • 在模拟器中发生完全相同的行为(WP7.x模拟器上的resume-failure,在WP8模拟器上正常工作)
  • 我使用线程在加载屏幕上异步下载内容 - 但它们已经完成并退出。 我不相信其他线程正在运行,尽管这看起来可能是线程阻塞问题。
  • 任何其他的想法可能阻止游戏从Guide.IsVisible恢复或如何调试/解决这个问题?


    解决此问题的方法很简单,就是在处理任何将应用程序传递到应用程序之外的操作(例如启动器,选择器和指南)时,不要使用SuppressDraw。


    您是否尝试在停用或关闭事件中调用“Guide.EndShowKeyboardInput”?

    为了使指南在应用程序暂停之前关闭,您确实需要10秒钟才能暂停,因此这可能值得您关注。 如果您希望指南在简历中重新展示,那么在您的状态保存代码中只需设置一个标志并在设置后打开指南。

    链接地址: http://www.djcxy.com/p/22775.html

    上一篇: Windows Phone XNA Games Hangs on Resume when Guide is Visible on WP7.x

    下一篇: WP7 + XNA game