Ciclo de vida do aplicativo

Eventos e métodos do ciclo de vida do aplicativo (App.cs)

Todo projeto do Windows Phone contém a classe App.cs:

public sealed partial class App : Application

Essa classe é seu contexto de aplicativo global.

Uso geral da classe Aplicativo:

  1. Ponto de entrada do aplicativo, principalmente para vários contratos de ativação.
  2. Gerenciamento do ciclo de vida do aplicativo.
  3. Inicialização dos recursos/serviços globais da aplicação.
  4. Detecção de exceção não tratada.

Eventos do Ciclo de Vida do Aplicativo

No App.cs, você pode se inscrever em eventos de ciclo de vida: Suspensão, Retomada

Suspendendo

Gerado quando o estado do seu aplicativo mudou para estado Suspenso. O estado de suspensão significa que seu aplicativo não está visível para o usuário (ocorre quando o usuário alterna para outro aplicativo), é a única indicação que você obtém antes que seu aplicativo seja encerrado. É por isso que é aqui que você deseja salvar o estado da sua sessão, como a posição do filme que está sendo reproduzido ou alguma outra informação valiosa do estado).

  • O encerramento do aplicativo não é determinístico, o sistema operacional pode encerrar o aplicativo suspenso a qualquer momento.

Retomar

Gerado quando seu aplicativo voltou do modo de suspensão. O sistema operacional restaura o estado do aplicativo automaticamente (sua página em que você estava quando o aplicativo foi suspenso), é aqui que você deve restaurar o estado do aplicativo que pode ser alterado no momento em que o aplicativo foi suspenso.

  • Você deve manipular o evento Resuming se precisar atualizar qualquer conteúdo exibido que possa ter sido alterado enquanto o aplicativo foi suspenso.

Métodos virtuais do aplicativo

Além disso, você tem dois métodos virtuais que você pode substituir:

protected virtual void OnActivated(IActivatedEventArgs args);
protected virtual void OnLaunched(LaunchActivatedEventArgs args);

Ativado

Chamado quando o aplicativo é ativado de alguma forma (inicialização não normal). Você não chegará aqui se simplesmente iniciar o aplicativo clicando em um bloco. Por exemplo, você chegará aqui quando outro aplicativo iniciar seu aplicativo. (Você pode usar o IActivatedEventArgs.Kind por motivo de ativação).

Lançado

Invocado quando o aplicativo é iniciado. Este método será chamado toda vez que seu aplicativo for iniciado. Geralmente usado como ponto principal para inicialização do aplicativo.