• Home

Migration Windows Phone 8.1 vers Universal App – Partie 2

Dans ce second volet de cette série d’articles sur la migration d’application Windows Phone, je vais vous montrer comment migrer la partie globalisation de votre application. Comme je l’ai dit dans un précédent article, il me semble primordiale d’avoir dans une application du store au minimum deux langues : le français (ou autre) et l’anglais. Nous allons donc voir comment gérer au mieux les différentes ressources pour internationaliser une application.

Principe général

Le principe général n’a pas changé avec Windows Phone 8.1, pour les différentes langues prises en charge, on retrouvera un ou plusieurs fichiers qui contiendront pour un élément donné la traduction correspondante. Ensuite dans l’application, plutôt que d’insérer le texte pour un bouton par exemple, on fera à la place une référence vers la ressource contenant le texte du bouton. Ensuite au chargement de l’application, en fonction des paramètres linguistiques de la machine, le bon fichier de ressources sera chargé et donc l’application sera traduite dans la bonne langue.

Mise en place des fichiers de ressources

Auparavant, l’extension utilisée était le « resx », maintenant il faut utiliser le « resw ». De plus les différents fichiers de ressources devront être placés dans une arborescence spécifique du projet comme le montre la capture ci-dessous. Le répertoire racine “strings” contient pour chaque langue souhaitée un répertoire. Et ce sont ces répertoires qui contiennent les traductions.

project structure

Pour chaque répertoire créé, une langue de traduction sera disponible. Il n’est plus nécessaire de les déclarer dans les propriétés du manifeste de l’application comme auparavant. La seule chose à configurer est la langue par défaut. Comme le montre la capture ci-dessous, il s’agit de l’anglais. Ainsi sur un poste en français, l’application sera traduite. Pour tous les autres pays, l’application sera en anglais.

manifest

Point à noter : il est également possible de traduire le manifeste en utilisant la syntaxe « ms-resource : » comme sur la capture ci-dessus.

Utilisation des traduction dans le code

L’utilisation des fichiers « resw » ne génère plus de classe d’accès aux traductions, il faut donc les créer soit même. Voici un exemple de classe permettant d’accéder aux différentes ressources depuis le code C# :

Il s’agit d’un simple singleton qui fournit un accès simplifier aux différentes ressources.

Voyons ce que cela donne dans le code XAML

C’est maintenant qu’intervient le changement majeur via l’utilisation de la propriété « x :Uid ». C’est cette dernière qui définit quelle entrée dans le fichier « resw » sera utilisé. Voici un exemple :

La première chose que l’on peut remarquer est qu’aucune mention n’est faite à la propriété « Icon » et « Label » du bouton. Et pour cause car ces dernières sont définies dans le fichier « resw » comme le montre la capture suivant :

. resw file

Ainsi pour le bouton « Account », la propriété « Label » sera remplacée par la valeur de l’entrée « Account.Label ». Ce principe est repris pour tous les composants graphiques et à un énorme avantage, vous pouvez stocker la traduction des images et de toutes les propriétés dans un seul et même emplacement.

NuGet 3.0 : what’s new ?

Le 20 juillet dernier, Microsoft nous a livré une nouvelle version du Framework .Net et de Visual Studio. Cette édition 2015 apporte son lot de nouveautés et entre autre une évolution de NuGet : la version 3.0. Je vais donc profiter de cet article pour vous montrer les différentes améliorations apportées à cet outil devenu incontournable dans le développement d’application.

nuget

Diagnostic tools avec Visual Studio 2015

Il existe plusieurs outils dans Visual Studio pour diagnostiquer les problèmes d’une application, le plus connu étant bien sur le débuggeur. Mais il est parfois utile d’avoir une vue plus élargie sur le fonctionnement de son projet. Ainsi la consommation CPU, le nombre d’objets instanciés et les différents événements peuvent mettre en lumière un éventuel problème. Pour cela il existe les « diagnostic tools » dans Visual Studio et ils sont de deux types : ceux qui donnent des informations en « live » et ceux qui collecte les informations pour ensuite les restituer de manière consolidée. Ce sont ces outils que je vais vous présenter dans cet article.

Diagnostic Live

Cet outil permet d’avoir un suivi en temps réel des différents indicateurs. Pour les activer, il suffit d’ouvrir la fenêtre suivante :

show diagnostic tools

Migration Windows Phone 8.1 vers Universal App – Partie 1

Cet article est le premier d’une série dont l’objectif est de présenter la migration d’une application Windows Phone 8/8.1 de type « Silverlight » vers une Universal App. Dans un premier temps, nous verrons comment migrer le code en utilisant les nouvelles apis. De plus même si les applications « Silverlight » seront toujours compatibles avec Windows 10, l’arrivé de ce nouvel OS est une bonne occasion pour débuter une migration. Elle permettra de tirer parti des dernières nouveautés et elle assurera également la pérennité de l’application.

windows10

Qu’est-ce qu’une « Universal App »

L’application universelle est le nouveau modèle de développement pour les applications Windows. Ce modèle permet de mutualiser le code entre toutes les plateformes. Avec l’arrivée de Windows 10 ce modèle est renforcé car il sera possible de déployer sur les téléphones, Xbox, IOT, soit l’ensemble des appareils acceptant la dernière version de l’OS de Microsoft.

IsolatedStorageSettings

Cette classe permet de stocker des informations de manière permanente. Elle est très utile par exemple pour stocker le paramétrage de l’application comme le montre l’exemple ci-dessous.

Débogage à distance avec les Remote Tools

Lors de la phase de mise au point d’une application universelle, il est impératif de tester son interface avec un écran tactile. Si comme moi votre poste de développement n’en dispose pas, il faut trouver un moyen pour déployer son application sur un autre appareil. La solution la plus simple est d’utiliser les fonctionnalités de « remote debugging » de Visual Studio. Vous pourrez ainsi déployer votre application facilement et surtout la tester avec le débogueur activé. Si en plus votre appareil cible dispose de Windows 10 comme dans cet article, vous aurez également le loisir de valider son bon fonctionnement avec le nouvel OS de Microsoft.

Installation des « remote tools »

La première étape consiste à télécharger les « remote tools » pour Visual Studio puis de les installer. Comme vous pourrez le constater sur la capture ci-dessous, il n’y a rien de compliqué, il suffit simplement de valider l’installation :

remote tools

TFS build vNext

Introduction

Une des nouveautés de la version 2015 de TFS est la mise à disposition d’une nouvelle méthode de build. Bien qu’étant toujours compatible avec le moteur « historique » basé sur « Workflow Foundation », il est désormais possible d’utiliser une build vNext. Cet article a pour objectif de faire un tour d’horizon de cette nouvelle fonctionnalité.

Avant de rentrer dans le vif du sujet, jetons un coup d’œil à la console d’administration de TFS. Dans cette dernière, la section « contrôleur de build » a disparu au profit d’une nouvelle nommée « Legacy Build Configuration » comme le montre la capture ci-dessous. Si vous souhaitez conserver vos builds existantes lors de la migration, il ne faudra donc pas oublier de configurer cette partie.

01 no build controller

TFS dans Azure – TFS setup – Partie 4

Introduction

Dans ce dernier épisode de cette série d’article sur TFS dans Azure, je vais vous montrer comment finaliser l’infrastructure en installant Team Foundation Server et Release Management.

Installation de TFS

Le première étape consiste à lancer le programme d’installation de TFS puis de cliquer sur « Install Now ». L’outil se chargera alors de copier l’ensemble des fichiers requis, la configuration se faisant ultérieurement.

01 installation

TFS dans Azure – Sql server setup – Partie 3

Introduction

Ce troisième volet de la série TFS dans Azure a pour objectif de vous présenter l’installation de SQL sur le serveur TFS. Ce dernier aurait pu être installé sur un serveur dédié mais un autre VM aurait ajouté un cout supplémentaire, il est donc préférable de tout installer sur le même serveur.

Centre d’installation SQL Server 2014

Comme toute installation, la première étape consiste à lancer le centre d’installation de SQL Server. L’option retenu de ce dernier est la mise en place d’un serveur autonome :

01 launch install

TFS dans Azure – Active directory setup – Partie 2

Introduction

Pour ce second article de la série TFS dans Azure, nous allons voir comment configurer un Active Directory. Cet élément est essentiel car il permet de fédérer l’authentification à travers l’ensemble des composants.

Ajout du rôle Active Directory

La première étape consiste à se connecter sur la machine puis via la console d’administration d’ajouter un nouveau rôle au serveur comme le montre la capture ci-dessous :

01 add role

CDN avec Azure

Lors de la mise en place d’un site, une étape permettant de l’optimiser est d’utiliser une CDN. En effet ce dernier permet d’externaliser le stockage du contenu statique (scripts, js, images, etc.) et donc de décharger le serveur. Dans cet article je vais vous montrer comment facilement monter son propre CDN en utilisant Azure.

Création du Stockage

La première étape consiste à créer un stockage qui recevra l’ensemble des fichiers utilisés par le CDN, comme le montre la capture ci-dessous :

creation storage
Web Analytics