Fechar um aplicativo WP7 programaticamente?

Duplicar Possível:
Aplicativo próximo do Windows Phone 7

Como fechar programaticamente um aplicativo WP7?

Você sempre pode chamar uma saída fazendo isso na sua página de destino usando este código ao clicar no botão “Voltar” do seu aplicativo:

if (NavigationService.CanGoBack) { while (NavigationService.RemoveBackEntry() != null) { NavigationService.RemoveBackEntry(); } } 

Isso removerá as inputs de volta da pilha e você pressionará um botão de volta para fechar o aplicativo, sem qualquer exceção.

Reconhecendo soluções conhecidas para fornecer botões “Exit”, atualmente não vejo uma razão convincente para implementar uma “saída” de um aplicativo WP7.

A plataforma é totalmente capaz de gerenciar o fechamento de aplicativos. Quanto mais aplicativos não fornecerem uma saída, mais rapidamente os usuários ficarão acostumados a não pensar em manter o aplicativo em casa e deixar a plataforma gerenciá-lo.

O usuário apenas navegará no dispositivo usando o início, a parte de trás etc.

Se o usuário quiser que o aplicativo atual faça alguma outra coisa rapidamente – fácil – basta clicar em Iniciar.

.Exit (), enquanto disponível para xna, realmente não é mais necessário também. Houve uma exigência de certificação durante o CTP que os jogos tinham que fornecer um botão de saída. Isso agora se foi.

Aplicativos não relacionados a jogos nunca tiveram a necessidade de implementar isso.

Quanto mais este tópico é discutido (e realmente foi dada uma boa corrida ao redor do bloco), mais os indicadores para mim sugerem que não há necessidade de codificar uma saída.

Também deve ser mencionado que as solicitações do certificado do aplicativo são específicas para que os aplicativos não tenham exceções não tratadas.

Não há realmente uma boa maneira de fazer isso. Há uma boa explicação / visão geral de suas opções aqui .

Para resumir, se este for um aplicativo do Silverlight (não XNA), não é suportado. Você pode simplesmente lançar uma exceção não tratada e o aplicativo será encerrado. Eu não recomendaria isso, parece um hack e uma maneira bastante crua de fazê-lo.

Aqui está uma maneira de torná-lo mais bonito, mas no final do dia ainda lança uma exceção. Não sei se o processo de certificação de aplicativos analisa se você está lançando exceções sem tratamento, mas acho que isso pode ser um problema.

A coisa mais simples a fazer é simular a sua raiz / home page. Eu estou supondo que isso é exatamente o que os aplicativos (aqueles que têm botão de quit) como Fruit Ninja fazem.

 if ( NavigationService.CanGoBack ) { NavigationService.GoBack(); } 

Por exemplo, o snippet acima funciona para um aplicativo do silverlight.

Outra maneira de sair do aplicativo é chamar a function de saída da class Game da estrutura Microsoft Xna.

Por exemplo:

 Microsoft.Xna.Framework.Game game = new Microsoft.Xna.Framework.Game(); game.Exit(); 
  private void exitBUtton_ONclick(object sender, RoutedEventArgs e) { throw new Exception("ExitAppException"); } 
    Intereting Posts