Когда приложение_отключено ** не ** запущено? - PullRequest
3 голосов
/ 16 ноября 2011

Так что я копаюсь в надгробии WP7, но не нашел достаточной информации о том, когда Application_Deactivation not run (и поэтому не Application_Closing).

Я мог бы представить, что он не запускается в следующих сценариях:

  1. Разряд батареи приводит к отключению телефона с приложением на переднем плане.
  2. Ваше приложение генерирует исключение, вызывая его прекращение.

Q: Верны ли приведенные выше предположения и являются ли они единственными случаями?

Может ли, например, фоновый агент другого приложения не выдавать исключение, вызывающее внезапное завершение работы вашего приложения, находящегося в настоящий момент на переднем плане? (Просто плеваться ..)

1 Ответ

6 голосов
/ 16 ноября 2011

Насколько мне известно, Application.Deactivation всегда вызывается, кроме случаев, когда:

  1. Пользователь выходит из приложения с помощью кнопки возврата (в этом случае Application.Closing поднимается)
  2. Если необработанное исключение приводит к закрытию приложения

Во всех других случаях, когда ОС деактивирует (надгробные камни) приложение, событие будет вызвано.Когда батарея становится критически низкой, ОС выключается.Это нормальное завершение работы, поэтому будет вызываться Application.Deactivation или Application.Closing (я не уверен, какой именно, но я бы предположил последнее).

Необработанное исключение в фоновом агенте другого пользователя не повлияет на ваше приложение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...