【问题标题】:Issues in "WP7" Sudden Tombstoning“WP7”突然墓碑问题
【发布时间】:2011-05-16 20:57:49
【问题描述】:

我在 WP7 墓碑中遇到了一些问题。我的问题是当我尝试突然的墓碑并回来时应用程序挂起。即,加载页面后,我按下设备菜单按钮并在几秒钟内按下后退按钮(在实际页面消失之前按下后退按钮)在那段时间页面加载但应用程序挂起/其后退键按下不起作用。如果我们尝试使用缓慢的 thombstone,它会完美运行。非常有趣的是,在墓碑加载和卸载 APP 的事件时,它可以完美地工作。请任何人帮我解决这个问题。

【问题讨论】:

  • 您是否尝试过在附加调试器的情况下运行?如果是这样,挂起期间会发生什么?你可以点击 Debug|Break All,然后 Debug|Windows|Threads 并检查每个线程的调用堆栈,看看它是否被卡住,也许在 UI 线程上做一些应该在后台线程上做的事情?
  • 您能否提供详细信息以说明如何复制?页面上有什么?你在做什么导致墓碑?

标签: windows-phone-7


【解决方案1】:

听起来您的应用程序已被停用,但并未被删除。这会导致 App 或 Page 构造函数都不会被调用,从而导致您的应用以意想不到的方式运行。我强烈推荐阅读Windows Phone Silverlight Application Life Cycle 文档。该文章的相关摘录:

如果用户 按下开始和返回按钮 电话接二连三地响起。在这个 案例中,申请收到了 停用事件和系统 开始保存状态 应用程序执行应用程序 墓碑。在此操作之前 完成后,应用激活事件为 已收到。系统知道 应用程序未从 内存,所以执行流程是 不同的。具体来说:

• 未调用应用构造函数。

• 不调用页面构造函数。

应用程序确定的唯一方法 如果发生这种情况是 设置一个标志来指示页面是否 构造函数已被调用。如果你 注意在上面的部分,这个标志 在页面构造函数中设置,并且 在 OnNavigateFrom 事件中清除。 在这种情况下,我们将收到 OnNavigatedTo 事件,但我们会看到 页面构造函数不是 叫。这告诉我们,我们的 应用程序没有被墓碑化。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多