如何确定应用程序是从休眠还是墓碑返回?

时间:2014-03-27 06:46:18

标签: c# .net xaml windows-phone-8

伙计们,现在我正在开发一个Windows Phone 8应用程序,我有一个问题是如何确定应用程序是从休眠状态还是墓碑状态返回?

由于

2 个答案:

答案 0 :(得分:4)

您的应用应检查事件args的IsApplicationInstancePreserved属性,以确定它是从休眠状态还是逻辑删除状态返回。如果IsApplicationInstancePreserved为true,那么您的应用程序处于休眠状态,并且操作系统会自动保留状态。如果它是假的,那么你的应用程序被逻辑删除,应该使用状态字典来恢复应用程序状态。

这是详细信息的代码

private void Application_Activated(object sender, ActivatedEventArgs e)
{
     // Determine whether it is returning from being dormant or tombstoned.
     // If it is false, return from tombstoned.
     if (e.IsApplicationInstancePreserved == false)
         //TODO
     else
         //TODO
 }

希望这可以帮到你。

答案 1 :(得分:0)

<强>休眠

当用户远离应用程序向前导航时,在引发Deactivated事件后,操作系统将尝试将应用程序置于休眠状态。在此状态下,所有应用程序的线程都将停止,并且不会进行任何处理,但应用程序在内存中保持不变。如果应用程序从休眠状态重新激活,则不需要执行任何操作来重新建立状态,因为它已被保留。

如果在应用程序处于休眠状态后启动新应用程序,并且这些应用程序需要的内存比提供良好用户体验所需的内存更多,操作系统将开始逻辑删除应用程序以释放内存。

<强>墓碑

逻辑停止的应用程序已终止,但操作系统会保留有关其导航状态的信息,并且还会保留在停用期间应用程序填充的状态词典。该设备将一次维护最多五个应用程序的逻辑删除信息。如果应用程序被逻辑删除并且用户导航回应用程序,它将重新启动,并且应用程序可以使用保留的数据来恢复状态。

follow the link below for detail