> Mobilité > Cycle de vie d’une application Windows Phone 7

Cycle de vie d’une application Windows Phone 7

Mobilité - Par Nick Randolph - Publié le 24 avril 2012
email

Petit tour d’horizon du cycle de vie d’application Windows Phone 7 avec quelques astuces pour gérer efficacement le « tombstoning ».

Cycle de vie d’une application Windows Phone 7

Vous avez sûrement vu combien il était facile de créer une application Windows Phone 7 au moyen de Visual Studio 2010 et d’Expression Blend 4. Toutefois, cette création ne s’arrête pas aux aspects visibles à l’œil nu. Cet article examine plus avant le cycle de vie complet d’une application Windows Phone 7 et présente quelques astuces indispensables afin de garantir un bon niveau de convivialité pour l’utilisateur.

Avant d’entrer dans le vif du modèle de cycle de vie, effectuons un petit récapitulatif du modèle de navigation pour une application Windows Phone 7. Au lancement de l’application, la page d’accueil apparaît. Si vous employez le modèle d’application fourni avec les outils de développement pour Windows Phone 7, elle est intitulée MainPage.xaml. A partir de cette page initiale, si l’utilisateur appuie sur le bouton Back (Précédent) du périphérique, l’application se ferme et ramène l’utilisateur à l’écran de démarrage (Start). Pour passer à une autre page de votre application, vous appelez la méthode Navigate sur l’instance NavigationService de la page courante :

  private void GoToSecondPageClick(object sender, System.Windows.RoutedEventArgs e){
     this.NavigationService.Navigate(new Uri(“/SecondPage.xaml”, UriKind.Relative));
  }

Sur la deuxième page, si l’utilisateur appuie sur le bouton Back, il ne ferme pas l’application (comme cela se produit sur la première page) mais revient à la page précédente. De même, si l’utilisateur ouvre une troisième page, les actionnements successifs du bouton Back à ce niveau permettent de revenir à la deuxième page, puis à la première et, enfin, de fermer l’application.

Les développeurs Windows Phone 7 emploient fréquemment le terme « back stack » (ou pile de retours en arrière) pour désigner ce processus. Ils font généralement référence à la liste des applications qu’un utilisateur a ouverte progressivement ou aux pages ouvertes au sein d’une application. En fait, cette pile est une combinaison des deux et est conçue de manière à fournir un mode d’utilisation cohérent en cas d’actionnement du bouton Back.

Considérons le scénario suivant : l’utilisateur commence par la Page1_1 de l’Application1 et passe à la Page1_2, appuie sur la touche Start pour afficher l’écran Start, puis lance l’Application2 (qui démarre sur la Page2_1) et passe à la Page2_2. Lorsque l’utilisateur appuie à plusieurs reprises sur le bouton Back, il voit la Page2_1, suivie de l’écran Start, de la Page1_2, de la Page1_1 et, enfin, de l’écran Start. Comme vous pouvez le voir, la pile de retours en arrière existe au sein des applications, pour un suivi des pages consultées par l’utilisateur, et entre les applications.

Maintenant, vous avez l’impression que l’utilisateur a ouvert plusieurs applications et c’est le cas. Toutefois, elles ne sont pas toutes actives en même temps. En fait, une seule application s’exécute, tandis que les autres sont en pause en arrière-plan. Par conséquent, que se passe-t-il si une application passe à l’arrière-plan ? Ce problème n’est pas facile à résoudre, car il ne s’agit pas simplement d’effectuer un dump mémoire de l’application exécutée et de le restaurer lorsque l’utilisateur clique sur le bouton Back. Cette approche pourrait aboutir à toutes sortes d’interruptions temporelles et fonctionnelles. Le modèle adopté par Microsoft permet plutôt la persistance de l’état avant le déchargement complet de l’application de la mémoire. Lorsque l’utilisateur revient à l’application, elle est redémarrée et les informations d’état sont restaurées.

Téléchargez gratuitement cette ressource

Aborder la Blockchain, comprendre et démarrer

Aborder la Blockchain, comprendre et démarrer

Une véritable révolution se prépare progressivement... les entreprises doivent veiller à ne pas rester à l’écart et se faire prendre de vitesse. Tout comme la mobilité ou encore le cloud, la blockchain est une composante essentielle de la transformation numérique. Découvrez, dans ce dossier, comment aborder, comprendre et démarrer la Blockchain

Mobilité - Par Nick Randolph - Publié le 24 avril 2012