Состояние, в которое переходит приложение Windows Phone, в результате прерывания
его работы при поступлении вызова или запуска другого приложения называется захороненным,
а процесс приостановки работы приложения – захоронением.
Процесс запуска захороненного приложения называется
восстановлением.Чтобы при запуске приложения, работа которого была прервана (захороненного приложения), приложение могло вернуться в то состояние, в котором оно находилось в момент прерывания, в его код надо добавить инструкции, обеспечивающие сохранение параметров необходимых для восстановления состояния.
Сохранение и восстановление параметров обеспечивает объект PhoneApplicationService.
using
Microsoft.Phone.Shell; // для
доступа
к PhoneApplicationSerivce
public
partial class MainPage : PhoneApplicationPage
{
// обеспечивает сохранение и восстановление состояния приложения
PhoneApplicationService appService = PhoneApplicationService.Current;
// информация, необходимая для восстановления
// состояния приложения после захоронения
DateTime cDate;
}
Работу по сохранению параметров и восстановлению состояния приложения
следует возложить, соответственно, на функции onNavigatedTo и onNavigatedFrom.
Пример:
//
Уход со страницы
protected
override void
OnNavigatedFrom(System.Windows.Navigation.NavigationEventArgs
args)
{
appService.State["cDate"] = cDate;
base.OnNavigatedFrom(args);
}
// Переход на страницу
protected
override void
OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs
e)
{
if
(appService.State.ContainsKey("cDate"))
{
// Страница
восстановлена
после
захоронения
cDate = (DateTime)appService.State["cDate"];
}
else
{
cDate = DateTime.Now;
}
}
В приведенном
примере признаком того, что приложение запущено после захоронения, является наличие
параметра cDate.