Atelier 5 : Utiliser les notifications de type push

Cet atelier introduit les notifications de type Push et l’utilisation de services HTTP dans Silverlight.

L’expérience utilisateur est la plus importante des caractéristiques du design de Windows Phone 7. Des efforts supplémentaires ont été faits pour s’assurer que les applications ne consomment pas trop les ressources de la batterie. Du coup, Windows Phone 7 ne permet pas à votre application d’exécuter du code dans un processus d’arrière-plan. Cela signifie que votre application ne peut pas interroger régulièrement un Web Service pour obtenir une information. Le service de notification de Push de Microsoft (Microsoft Push Notification, MPN) compense cette restriction et vous permet d’envoyer des messages à un périphérique Windows Phone même si votre application n’est pas en cours d’exécution.

Vue d'ensemble

Il y a trois acteurs majeurs dans ce service :

  • L’application Web de backoffice, ou cloud service, qui communiqueé avec l’application Windows Phone 7.
  • Le périphérique Windows Phone—et non votre application WP7, car si votre application est en courst d’exécution, il y a un petit besoinpeu de chance qu’elle utilise d’utiliser le service de notification. Mais Au contraire, sivotre l’application n’est pas en courst d’exécution, alors le client du service dee notification joue un rôle majeur. Ce client est un service, tournant sur WP7, qui implémente le protocole « Client To Server ».
  • Le **service de notification (**Microsoft Push Notification MPN) —qui envoie, de la part de votre application Web de backoffice, les messages sous forme de notification de type “push” aux périphériques WP. Ce service est conçu pour fournir aux services de backoffice un canal dédié et, persistaentdont le but est de permettant permettre d’envoyer des notifications à un périphérique mobile.
Push

Lorsqu’un service a besoin d’envoyer une notification de type Push à un périphérique, il envoie la demande de notification au service MPN, qui redirige la notification vers l’application ou vers le périphérique.,Lepériphérique. Le tout s’effectue en fonction du type de notification qui est envoyé.

Le client du service MPN, sur le périphérique, reçoit la notification de type Push à travers un canal de notification. Lorsque le canal est créé, un abonnement l’est aussi crééégalement afin de permettre au service de backoffice d’envoyer des notifications au canal. Un canal est représenté par une URI qui contient toutes les informations associées à l’enregistrement.

Lorsque l’application reçoit les notifications de type Push, elle peut accèderaccéder au service de backoffice au travers de son protocole de communication pour récupérer les informations dont elle a besoin.

Les applications d’aujourd’hui tendent à partager de multiples écrans qui seront vus par des ordinateurs installés localement, dans le « cloud » ou sur des téléphones. Le service MPN permet une intégration de ces 3 types de périphériques au travers d’une API simple et unifiée.

Cet atelier introduit les notifications de type Push et l’utilisation de services HTTP dans Silverlight. Vous allez découvrir comment créer la logique, côté serveur, nécessaire pour envoyer des messages au service MPN. Vous verrez également comment créer une simple application Windows Phone 7 qui servira de client pour recevoir les notifications. L’application cliente recevra des notifications de mise à jour de la météo. L’application métier, côté serveur, sera une simple application WPF qui enverra les alertes de météo aux différents clients connectés, grâce au service MPN. Lorsque l’application cliente Windows Phone 7 recevra l’alerte, elle affichera les informations reçues.

Objectifs

A la fin de cet atelier :

  • Vous serez familier avec les possibilités de communications des applications Windows Phone 7
  • Vous serez familier avec le concept de notification de type Push et les fonctionnalités du téléphone qui le permettent
  • Vous comprendrez comment fonctionnent les notifications de type Push, sur le téléphone et dans le « cloud »
  • Vous serez capable d’utiliser les services de notification (de type Push) du téléphone
  • Vous serez capable d’utiliser des clients Web pour vous enregistrer auprès des notifications de type Push
  • Vous serez capable d’utiliser les fonctionnalités d’interrogation du statut réseau pour afficher le statut de connectivité du téléphone
  • Vous aurez créé une application Silverlight qui :
    • S’enregistre auprès du service de notification (de type Push)
    • Gère les événements de réception de notification, à l’exécution
    • Affiche des notifications sur le Shell

Prérequis

Les éléments suivants sont nécessaires pour réaliser cet atelier :

  • Microsoft Visual Studio 2010 Express for Windows Phone or Microsoft Visual Studio 2010
  • Windows Phone Developer Tools

Installation

Pour faciliter cet atelier, beaucoup de code utilisé est disponible sous la forme de Code Snippet, dans Visual Studio. Pour installer ces Codes Snippets :

1. Exécutez le fichier .vsi situé dans le répertoire Source\Setup.

Note: Si vous avez des problèmes pour exécuter l’installeur de “Code Snippets”, vous pouvez les installer à la main en copiant tous les fichiers situés dans le répertoire Source\Setup\CodeSnippets vers le répertoire suivant :

\My Documents\Visual Studio 2010\Code Snippets\Visual C#\My Code Snippets

Utiliser les « Code Snippets »

Avec les “Code Snippets”, vous avez tout le code nécessaire à portée de main. Ce document vous explique exactement comment les utiliser.

Note : Les noms de Code Snippet dans les images suivantes sont montrés à titre d’exemple.

Utilisation les Code Snippets de Visual Studio pour insérer du code dans votre projet

Pour ajouter un Code Snippet dans Visual Studio, vous devez simplement placer le curseur à l’endroit où vous désirez que le code soit inséré. Commencez ensuite à taper le nom du snippet (sans les espaces), puis sélectionnez, dans l’IntelliSense, celui qui vous intéresse. Pressez ensuite la touche Tab 2 fois : le code sera inséré après la position du curseur:

Saisie du nom du snippet

Appui sur la touche Tab pour sélectionner le snippet surligné

Appuyez sur la touche Tab une nouvelle fois pour insérer le snippet

Pour insérer un snippet en utilisant la souris plutôt que le clavier, faîtes un clic droit dans le bloc de code où vous souhaitez insérer le snippet, sélectionnez Insert Snippet suivi par My Code Snippets, et enfin, choisissez le snippet qui vous intéresse dans la liste.

Pour en savoir plus sur les Code Snippets, rendez-vous ici: https://msdn.microsoft.com/en-us/library/ms165392.aspx.

Exercices

Cette partie comprend les exercices suivants :

1. Introduction aux notifications de Windows Phone pour les mises à jour

2. Introduction aux notifications pour les alertes

3. Utilisation des Live Tiles

Durée estimée: 90 minutes.

... Pour consulter la suite de l'article, veuillez le télécharger ci-dessous...

> > N'oubliez pas de télécharger également les sources < <

Tweet

Télécharger le kit de développement Mango

Les ateliers du coach

Le coin des experts