Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este artigo e código de exemplo demonstra os quatro estados do aplicativo no iOS e a função dos AppDelegate métodos em notificar o aplicativo de quando os estados são alterados. O aplicativo imprimirá atualizações no console sempre que o aplicativo mudar de estado:
Passo a passo
Abra o projeto Lifecycle na solução LifecycleDemo .
Abra a
AppDelegateturma. O registro em log foi adicionado aos métodos de ciclo de vida para indicar quando o aplicativo mudou de estado:public override void OnActivated(UIApplication application) { Console.WriteLine("OnActivated called, App is active."); } public override void WillEnterForeground(UIApplication application) { Console.WriteLine("App will enter foreground"); } public override void OnResignActivation(UIApplication application) { Console.WriteLine("OnResignActivation called, App moving to inactive state."); } public override void DidEnterBackground(UIApplication application) { Console.WriteLine("App entering background state."); } // not guaranteed that this will run public override void WillTerminate(UIApplication application) { Console.WriteLine("App is terminating."); }Inicie o aplicativo no simulador ou no dispositivo.
OnActivatedserá chamado quando o aplicativo for iniciado. O aplicativo agora está no estado Ativo .Pressione o botão Início no simulador ou dispositivo para trazer o aplicativo para o segundo plano.
OnResignActivationeDidEnterBackgroundserá chamado à medida que o aplicativo faz a transição deActivee paraInactiveoBackgroundedestado. Como não há nenhum código de aplicativo definido para ser executado em segundo plano, o aplicativo é considerado suspenso na memória.Navegue de volta para o aplicativo para trazê-lo de volta ao primeiro plano.
WillEnterForegroundeOnActivatedambos serão chamados:
A seguinte linha de código no controlador de exibição é executada quando o aplicativo entrou no primeiro plano a partir do plano de fundo e altera o texto exibido na tela:
UIApplication.Notifications.ObserveWillEnterForeground ((sender, args) => { label.Text = "Welcome back!"; });Pressione o botão Início para colocar o aplicativo em segundo plano. Em seguida, toque duas vezes no botão Início para abrir o seletor de aplicativos. No iPhone X, passe o dedo para cima a partir da parte inferior da tela:
Localize o aplicativo no App Switcher e deslize para cima para removê-lo (no iOS 11, pressione por muito tempo até que os ícones vermelhos apareçam no canto):
O iOS encerrará o aplicativo. Observe que WillTerminate não é chamado porque o aplicativo já está suspenso em segundo plano.


