Chiudere un’applicazione WP7 al livello di programmazione?

Possibile duplicato:
Windows Phone 7 chiude l’applicazione

Come faccio a chiudere a livello di codice un’applicazione WP7?

Puoi sempre chiamare un’uscita facendo ciò nella tua pagina di destinazione, usa questo codice al clic sul pulsante back dell’applicazione:

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

Questo rimuoverà le voci dalla pila, e premerai un pulsante indietro per chiudere l’applicazione senza eccezioni.

Riconoscendo soluzioni note per fornire pulsanti “Exit”, al momento non vedo un motivo convincente per implementare un “exit” da un’applicazione WP7.

La piattaforma è completamente in grado di gestire la chiusura di app. Più app non forniscono un’uscita, più gli utenti più veloci saranno abituati a non pensare all’app house keeping e lasciare che sia la piattaforma a gestirlo.

L’utente naviga il suo dispositivo semplicemente usando start, back, ecc.

Se l’utente vuole uscire dall’app corrente per fare qualcosa di diverso velocemente – è facile – premono semplicemente start.

. Exit (), sebbene disponibile per xna, non è nemmeno più necessario. Durante il CTP c’era un requisito per i certificati che i giochi dovevano fornire un pulsante di uscita. Questo è ora andato.

Le app non di gioco non hanno mai avuto bisogno di implementarlo.

Più questo argomento è discusso (ed è stato fatto un bel giro intorno al blocco), più gli indicatori suggeriscono che non è necessario codificare un’uscita.

Va anche ricordato che le richieste di conferma dell’app sono specifiche per le app che non dovrebbero avere eccezioni non gestite.

Non c’è davvero un buon modo per farlo. C’è una bella spiegazione / panoramica delle tue opzioni qui .

In breve, se si tratta di un’applicazione Silverlight (non XNA), non è supportata. Puoi semplicemente lanciare un’eccezione non gestita e l’app si chiuderà. Non lo consiglierei, sembra un trucco e un modo piuttosto crudo di farlo.

Ecco un modo per renderlo più bello, ma alla fine della giornata lancia comunque un’eccezione. Non so se il processo di certificazione dell’applicazione verifichi se si stanno generando eccezioni non gestite, ma suppongo che potrebbe essere un problema.

La cosa più semplice da fare è simulare il ritorno dalla tua root / home page. Immagino che questo sia esattamente ciò che fanno le app (quelle che hanno chiuso il pulsante) come Fruit Ninja.

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

Btw, sopra snippet funziona per un’applicazione Silverlight.

Un altro modo per uscire dall’applicazione è chiamare la funzione di uscita della class Game del framework Microsoft Xna.

Per esempio:

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