Accueil Nos publications Blog Windows Phone 8 : nouveau SDK, nouveaux outils

Windows Phone 8 : nouveau SDK, nouveaux outils

Le tant attendu SDK pour Windows Phone 8 est enfin arrivé et apporte son lot de nouveautés, en apportant notamment son intégration à Visual Studio 2012. Faisons un tour d’horizon de tous ces nouveaux outils venant accélérer le développement d’applications Windows Phone !

Pré-requis

Voici la liste des pré-requis :

OS supportés Windows 8 64-bit (x64)
Hardware 4 Go d’espace disque disponible
4 Go de RAM (recommandé)
Processeur 64-bit (x64)
Emulateur Windows Phone Windows 8 Pro ou plus (pour Hyper-V) et Second Level Address Translation (SLAT)

Le SDK requiert au minimum Windows 8 version 64 bit. Un choix quelque peu imposé, mais qui a le mérite de tirer vers le haut et pousser à une certaine cohérence.

Le nouvel émulateur tourne sous Hyper-V, et nécessite donc Windows 8 Pro 64 bit accompagné d’un processeur supportant le SLAT (Second Level Address Translation). La plupart des processeurs “modernes”  intègrent cette technologie  (Intel i3, i5, i7 notamment). Si vous avez un doute, MSDN vous fournit une procédure de vérification.

En contre-partie, votre émulateur devient une machine virtuelle à part entière, l’OS complet étant chargé. On aurait pu espérer que l’instance soit conservée d’une utilisation à une autre, ce n’est malheureusement pas le cas.

N.B.: Si votre système ne supporte pas l’émulateur WP8, vous pourrez tout de même développer des applications WP8.

Templates de projet

Premier constat lorsqu’on souhaite créer un nouveau projet Windows Phone : la liste des templates a changé !

3 nouveaux templates C#/VB sont disponibles :

  • Windows Phone XAML and Direct3D App : pour créer une application incluant des composants natifs
  • Windows Phone XAML and XNA App : pour créer un jeu XNA, le projet cible uniquement WP7.1 puisque XNA n’est plus inclu dans WP8
  • Windows Phone HTML5 App : pour créer une application web (se résumant à un WebBrowser exécuté par IE10, pas de développement à la Windows 8)

Tous les autres templates d’application ont été mis à jour pour inclure la localisation via un fichier de ressource et une classe wrapper. Une initiative bien sympathique 🙂

Le SDK permet de cibler des applications Windows Phone 8 et Windows Phone 7.1 sous Visual Studio 2012 :

Vous retrouverez également une liste complète de templates C++, allant de l’application 100% native au composant à intégrer dans son application managée.

App Manifest Designer

VS2012 propose une nouvelle interface d’édition du WMAppManifest.xml. Adieu les éditions à la mano (ou presque) !

L’interface couvre 4 onglets : Application UI, Capabilities, Requirements et Packaging.

L’onglet “Application UI” permet d’éditer les informations de l’application (nom + description), la page principale de navigation, l’icône de l’application, les résolutions supportées, et la tuile principale.


L’onglet suivant touche aux capabilities de l’application, c’est-à-dire les fonctionnalités auxquelles aura accès l’application.


Les requirements fêtent leur arrivée avec WP8, il s’agit des pré-requis matériels de l’application, tels que le NFC, une caméra frontale, etc. Attention, une application ne pourra pas être installée si elle ne rencontre pas un de ces pré-requis.

Enfin, l’onglet Packaging pour renseigner les informations du package telles que le numéro de version et les langues supportées.

Plusieurs éléments de configuration ne restent modifiables qu’à la main, comme par exemple les Extensions,  Tasks, etc. Ceci dit, l’auto-complétion vient nous faciliter la tâche 🙂

Emulateur

Nouvelles résolutions, nouvelles déclinaisons

Rappelons que Windows Phone 8 propose deux nouvelles résolutions : WXGA (768×1280) et 720p (720×1280), s’ajoutant au WVGA (480×800) déjà présent sur WP7.
Alors que WVGA et WXGA proposent le même ratio de 15:9, il faudra faire plus attention au 720p qui propose un ratio différent (16:9).

Si on ajoute à cela les téléphones bas de gamme tournant avec seulement 256Mo de RAM, on secoue, et on obtient une magnifique variété de téléphones. Heureusement pour nous, l’émulateur supporte toutes ces versions !

Du changement …

Plusieurs changements sont à noter par rapport à l’émulateur Windows Phone 7.1.

Tout d’abord, le rendu graphique de l’émulateur n’est plus accéléré par la carte graphique, il utilise désormais le CPU uniquement.

Auparavant, l’émulateur se basait sur la connexion Windows. Avec WP8, celui-ci se connecte directement comme un device séparé, avec sa propre IP. Attention donc à la configuration d’un éventuel pare-feu ou proxy.

Enfin, la media library n’est plus pré-peuplée de photos de démonstration. Les photos sont générées à la volée, lors de votre première visite dans le hub photo de l’émulateur. Il faudra donc penser à s’y rendre au moins 1 fois avant de se lancer dans des tests utilisant la MediaLibrary ou la PhotoChooserTask.

Outils additionnels

Dans les outils additionnels de l’émulateur, on découvre un nouvel onglet “Network“. Il donne tout simplement accès aux interfaces réseau de la VM de l’émulateur. Plutôt pratique sachant qu’il possède maintenant sa propre IP.

Simulation Dashboard

Voici la nouvelle merveille du kit WP8 : le Simulation Dashboard ! Celui-ci permet de simuler une connexion internet (2G, 3G, 4G…) en variant sur la force du signal. On pourra surtout tester des scénarios de perte de connexion sans avoir à débrancher son câble réseau !

Un simple bouton vous permettra de verrouiller l’écran de l’émulateur ou du téléphone (déjà possible dans l’émulateur via la touche F12).

Enfin, le bouton “Trigger Reminder” permet de lancer une notification de rappel, pour compléter le panel de scénarios.

App Monitoring

Windows Phone Application Analysis inclut maintenant du monitoring de l’application, en plus du profiling. Il s’agit de capturer des métriques particulières, afin d’analyser la qualité de l’application selon différents critères.

Le test est accessible depuis le menu DEBUG > Start Performance Analysis, ou via ALT + F1.

Vous obtiendrez ainsi des statistiques sur le temps de lancement de l’application, sa réactivité, un rapport sur les données échangées, l’utilisation mémoire, etc.

Debugging

Depuis les propriétés du projet, l’onglet Debug vous donne le choix de debugger du code managé ou natif depuis un device WP8. Vous pouvez debugger votre application et un background agent durant une même session de debug.

Il est par ailleurs possible de debugger une application lancée depuis une tuile ou une notification. En effet, si vous lancez votre application avec le debugger attaché et que vous pressez Back, le debugger restera attaché. Il suffira alors de lancer à nouveau l’application depuis une tuile ou notification push, et le debug continuera.

Conclusion

Cette nouvelle version du SDK Windows Phone recèle de nombreux outils venant faciliter la vie du développeur. Comme un cadeau de Noël avant l’heure, ce SDK est un vrai plaisir à découvrir. Alors à bientôt pour de nouvelles fonctionnalités passées au peigne fin ! 🙂