Obtenir un environnement de développement Windows 10 - UWP

Pour démarrer le développement d'applications Windows Universelle (UWP Universal Windows Platform) quoi de mieux qu'une machine virtuelle correctement configurée, c'est ce que l'on vous propose ici :

Obtenir un environnement de développement Windows 10.

En suite ce qui a attiré mon regard c'est :

Exemples UWP Windows (mise à jour de mars 2017)

On arrive directement dans un GitHub et là c'est plein d'exemples super utilisant la techno UWP.

Une fois le fichier WinDev1802Eval.VirtualBox dézipé, on a un fichier .ova, je connaissais pas, il permet d'importer une Machine Virtuelle, c'est à dire que cette machine a pu être crée sur une autre plateforme cf. Doc Oracle

Évidemment, il vous faudra un compte Microsoft pour activer votre version de Visual Studio 2017 sur cette plateforme Windows 10. Et vous pourrez alors seulement créer des applications Windows Universal (UWP ou Universal Windows Platform). Tel est notre objectif ...

Dans Visual Studio 2017 faire : File -> New -> Project -> Visual C# -> Windows Universal :

Visual Studio Community 2017 Création de projet d'application Windows Universal Platform (UWP)
Visual Studio Community 2017 Création de projet d'application Windows Universal Platform (UWP)

Sorry, I got to go to the beach ! But I'll be back ;)

Essayons les exemples : Altimeter (Universal Windows). Je charge la solution dans mon Visual Studio et je ne me dégonfle pas je lance l'exécution :

UWP - Sample Altimeter on ARM platform
UWP - Sample Altimeter on ARM platform

On s'en doutait un peu ... est ce que j'installe ?

Windows 10 Mobile Emulator (Anniversary Edition)
Windows 10 Mobile Emulator (Anniversary Edition)

Je clique sur Install et Boum !

Problème d'installation de Windows 10 Mobile Emulator
Problème d'installation de Windows 10 Mobile Emulator

Ce n'est pas tout à fait un problème d'installation mais vous ne pouvez pas dire à ces idiots de Redmond qu'ils n'ont qu'à le fermer eux même le Visual Studio ouvert ... bon je ferme.

Windows 10 Mobile Emulator - Fenêtre stupide
Windows 10 Mobile Emulator - Fenêtre stupide

Vous ne la trouvez pas stupide cette fenêtre ? Inutile non ? J'ai un peu de patience alors j'attends ... je pense bien cliquer sur "Cancel" mais j'ai peur de rater l'installation alors que pourtant le processus est à 100%.

La fenêtre suivante aussi est très intéressante :

Windows 10 Mobile Emulator - Fenêtre stupide
Windows 10 Mobile Emulator - Fenêtre stupide

Vous ne trouvez pas ... Alors ... et alors ? Qu'est ce que vous pensez qu'il se passa lorsque je relançais la solution Altimeter de  Visual Studio ? Suspense .. que je ne fais pas durer plus longtemps ...

Voilà le résultat :

Windows 10 Mobile Emulator - Error error encore des errors
Windows 10 Mobile Emulator - Error error encore des errors

Quelle grosse daube ! C'est toujours le même blabla les même bêtises inlassablement répétées par ces foutus ingé de redmond, en attendant je vais essayer d'installer le SDK pour Windows 10 mobile correctement et arrêter de jouer avec cette dauberie ...

A bientôt sur la plage !

Activer votre appareil pour le développement - Le mode Développeur pour Windows 10

A quoi sert ce mode développeur pour Windows 10 ? On nous dit que si l'on utilise notre ordinateur pour des "activités quotidiennes" comme les jeux, la navigation Web, ou les applications d'Office, on ne doit pas activer ce mode ! Mais encore ... Cela fait maintenant plusieurs décennies que je développe que je suis donc développeur et je n'avais encore jamais eu à faire ça.

Mais c'est vrai maintenant à chaque fois que je lance mon Visual Studio et que j'ouvre une application Xamarin pour tenter de développer un truc, j'ai cette foutue fenêtre :

Windows 10 - Passez en Mode développeur
Windows 10 - Passez en Mode développeur

Ca fait peur ! D'autant que quand je clique la case à cocher "Mode développeur" j'ai une popup surgissante qui apparaît :

Utiliser les fonctionnalités de développement
Utiliser les fonctionnalités de développement

Mais ça fait une putain de peur, le message est le suivant :

Vous exposez alors votre périphérique et vos données personnelles à des risques pour la sécurité et risquez d'endommager votre périphérique.

J'en tremble !

En fait ce panneau fait partie des "Paramètres Windows" que vous pouvez le retrouver à partir de la racine :

Windows 10 - Paramètres de windows
Windows 10 - Paramètres de windows

Mise à jour de sécurité d’ailleurs on peut noter la pauvreté graphique, maintenant, des Panneau de configuration de Windows. C'était plus fun avant avec des icônes maintenant tout se ressemble. 

Windows 10 - Paramètres de windows pour les développeurs
Windows 10 - Paramètres de windows pour les développeurs

Il n'empêche que je n'ai pas envie de cocher cette case à la légère. 

Activer votre appareil pour le développement

Dire que je suis outré, n'est pas le moindre de mes sentiments, à l'heure où je lis ces pages. Elles sentent mauvais, "it stinks" comme dirait les anglais. Et on peut déjà imaginer un jour que Crocrossoft interdise de développer sur ses plateformes. Il lui suffit de ne plus proposer ce mode développeur. 

Windows 10 - Activation du mode pour les développeurs
Windows 10 - Activation du mode pour les développeurs

Voilà ce que l'on peut retenir de la page :

  • Portail d’appareil Windows. Device Portal est activé et les règles de pare-feu associées sont configurées seulement si l’option Activer Device Portal est activée. 

Vous comprenez quelque chose ? Moi pas encore !

  • Installation et configuration des règles de pare-feu pour les services SSH qui permettent l’installation à distance des applications. L’activation de l’option Découverte d’appareils active le serveur SSH.

Je pense que cela à avoir avec l'AppStore donc le portail de téléchargement et d'installation d'applications en ligne.

Le page suivante n'est pas plus explicite :


Il s'agit de techniques pour déployer les application que vous développez en fonction du types d'application. C'est nouveau par rapport aux anciens développement qui se faisait sans portail.

Try to continu to have fun !

Ma deuxième application avec Xamarin sous Visual Studio 2017

J'ai beaucoup travaillé avec Xamarin sans résultat vraiment probant. Alors oui c'est un peu provocateur mais je le sens bien comme ça cette fois je repars avec Windows 10 et je crois que c'est le clou de ma réussite.

Je dirais qu'il y a des amélioration hardware, oui hardware, entre Windows 7 et Windows 8.1 et donc avec Windows 10 et elles font que toute la chaîne de développement Xamarin fonctionne enfin correctement avec Windows 10 mais pas correctement avec Windows 7.

Je commence par le commencement :

https://docs.microsoft.com/fr-fr/xamarin/cross-platform/get-started/requirements#install

Installation de Visual Studio 2017

Puis, j'installe Visual Studio 2017 :

Visual Studio 2017 - Installation

Whaou, toutes ces options ... je choisie uniquement "Développement mobile en .NET".

Je vois dans la colonne de gauche toutes les options qui sont ainsi choisies avec cette option de développement mobile en .NET.

Visual Studio 2017

Et puis j'installe Visual Studio 2017. Et oh ? Alors ! Encore un petit redémarrage ...

Visual Studio 2017

Installe de Visual Studio 2017 sur Windows 10 - Encore un petit redémarrage.

Visual Studio 2017 - Menu Démarrer


Voici les Icônes du menu démarré. L'installer qui va permettre de modifier les options d'installation de Visual Studio. Le Debuggable package Manager quésaco ? Encore un gestionnaire de packages ?

Lancement de Visual Studio 2017

Tout de suite on se rend dans les Templates de projets en créant un nouveau projet dans le menu Fichier -> Nouveau projet :

Mobie App (Xamarin.Forms)

Je suis surpris par l'endroit proposé pour sauver mon projet dans "repos" comme "repository" alors que l'installe de Visual Studio a créée un tas de répertoire sur mon disque :

Visual Studio 2017

Application Xamarin Forms

Création de ma première Application Xamarin.Forms :

Visual Studio 2017

New Cross Platform App

Voici les options qui se présentent à moi :

Mobile App Xamarin Forms - Options
  • Shared Project
  • .NET Standard
Ce n'est pas la moindre des options si vous cliquez sur le point d’interrogation, vous découvrez un monde.Il vous faut choisir entre le Projet partagé permet d'utiliser des directives de compilations pour les différentes plateformes :
  • iOS app
  • Android App
  • Windows App
Bibliothèques de classes portables ou Bibliothèques .NET standards où l'on ne peut pas utiliser les directives de compilation.

Je choisie : .NET Standard et toutes les plateformes et Master Detail autant avoir un template un un peu étoffé je clique sur Ok et là c'est le drame. Le développement est tellement imbriqué avec Windows 10 que le Panneau de configuration s'est ouvert pour me permettre de choisir encore des options ...

Options de Windows 10 pour faire du développement mobile
C'est la folie à quoi peuvent bien servir toutes ces options ...

Windows 10 Options pour les développeurs et pour Xamarin

Voilà, je suis démasqué, j'avoue oui j'essaye de développer une application mobile ... avec Xamarin mais je trouve cela un peu fastidieux !

Windows 10 Options pour les développeurs - 2

Et encore et encore des options ...

Windows 10 Options pour les développeurs -3

Pendant ce temps Visual Studio s'y mets aussi en m'indiquant que mon application App1 a été modifiée en dehors de l'environnement. Recharger !

Visual Studio pour une application Mobile

Le projet Visual Studio Xamarin.Froms est créé

Voici le projet avec les déclinaison de plateformes :

Projet Visual Studio Xamarin Forms pour les plateforme iOS Android et ...

Exécution de l'application Xamarin Forms

Je vais tout de suite lancer l'exécution de l'application Xamarin Forms pour évaluer le niveau du simulateur et je choisie Android.

Quel choix de simulateur ?

Visual Studio 2017
Visual Studio 2017

Cela va t-il fonctionner ?

Je clique sur Exécuter une petite icône s'affiche :

Emulateur Android pour Windows 10

Et puis un magnifique Simulateur d'Android sur ma plateforme Windows 10 :/p>

Ecran d'accueil du simulateur Android pour Windows 10

En cliquant sur le petit triangle flèche en haut j'accède aux applications. Mon application App1 se trouve en bonne place au milieu de tout cela :

Application Xamarin Forms sous simulateur Android avec Windows 10

En cliquant sur l'icône j'accède à mon application :

Application Xamarin Forms sous simulateur Android avec Windows 10
Pour jouer un peu, je clique sur l'onglet numéro 2 :

Application Xamarin Forms
Application Xamarin Forms

Voilà, il me reste à écrire mon propre code ou à plutôt à apprendre comment développer une application Mobile sur Android. Mais ça fonctionne assez simplement une preuve de plus qu'il ne faut même pas essayer avec Windows 7 (cf. mon article précédent) avec lequel cela ne fonctionne pas du tout !

Deux secondes après tentant de stopper l'exécution de l'application, c'est le crash !

Application Xamarin Forms
Visual Studio Xamarin Application Mobile

Arrggg ! C'est vraiment toujours la même m.. (bip)

Je modifie un peu le code pour être bien sûr que c'est mon application qui s'exécute sur le simulateur Android ... Et bientôt voici mon premier résultat :

Application Xamarin Forms
Je modifie mon application Xamarin Forms

Dans le fichier :

\\Visual Studio 2017\Templates\Xamarin\App1\App1\App1\Services\MockDataStore.cs

En cliquant sur le premier Item :

Application Xamarin Forms
Mon Application Mobile en Xamarin Forms

Voilà, je reconnais le texte que j'ai mis dans le code. C'est tout pour le moment et c'est, je le répète une dernière fois, plus prometteur qu'avec Windows 7 !

Vérifier votre environnement Xamarin

Cela semble une chose importante en effet que de vérifier son environnement alors allons y. Le site MSDN n'est pas très graphique et cela fait pas de mal de comparer ce que j'ai sur ma plateforme de développement dans Outils -> Options ... :

Visual Studio 2017
Visual Studio 2017 - Outils ->Options...

Descendre vers Xamarin :

Visual Studio 2017
Xamarin Vérifier votre environnement

Les paramètres Android :

Visual Studio 2017
Xamarin Vérifier votre environnement - Les paramètres Android

Et pour info, je prends également une photo des paramètres iOS que voici :

Xamarin Vérifier votre environnement - Les paramètres iOS

Au passage je constate que je n'ai pas le NDK d'Android d'installé ... et je me demande bien pourquoi.

L'installation n'est pas terminée il faut aller dans le Menu Outils->Android->Getionnaire Android SDK :

Gestionnaire Android SDK

Gestionnaire pour les plateformes :

Plateforme Android  7.1 - Nougat

Et pour les outils :

Plateforme Android Outils

Installation du Android NDK

Du coup j'ai bien envie de cocher le NDK juste pour compléter mon installation.

Installation de l'Android NDK

Et il faut accepter la licence pas le choix c'est certainement pour cela que cet install n'est pas comprise dans l'install globale : pour des raisons de licence :

Installation de l'Android NDK - Licence

Il faut noter que 'il faut relancer Visual Studio 2017 pour voir le résultat dans : Options-> Xamarin-> Paramètre Android

Configuration Android Ok avec le NDK Android

Pas mal non, cette fois c'est cool ! C'est un peu long, un peu laborieux mais cette fois on est sûr d'avoir ce qu'il faut pour développer avec Xamarin sous Windows 10.

Bientôt ce sera le temps d'aller à la plage ...

Ma premère application pour Android avec Xamarin sous Visual Studio 2017

Comment créer une première application pour Android ? Certainement en installant correctement le simulateur d'une plateforme Android et le SDK correspondant, émulateur ou simulateur faut voir.

Dans mon Visual Stufio 2015 Community, j'ai une barre d'outils nommée "Android", je dois vous l'avouer, je ne sais plus trop comment elle est arrivée là, certainement au gré des installations des différents SDKs. Alors aujourd'hui, je vais essayer d'en faire l'exploration.

Mais est-ce que tout ceci est fonctionnel ?


Voici la barre d'outils Android :
Android Tool Bar
dont voici la liste des outils dans Visual Studio 2015 Community :

Android's Tools for development

Android Device Monitor

Essayons de cliquer sur Android Device Monitor :

Android Device Monitor
Oh c'est Superbe toutes ces erreurs qui vous pètent à la figure, ces messages sympathiques de bienvenue j'adore ... ça doit certain très bien fonctionner !

Quand est ce que quelqu'un ira dire à ces idiots de Redmond qu'il faut faire des ErrorBox avec un texte copier-collable que je puisse le coller directement le texte de l'erreur dans mon Explorateur sinon vous êtes obligé de le taper à la main, franchement je n'ai pas que ça à faire ...

On découvre :

D:\Users\Braby\AppData\Local\Android\android-sdk

Je regarde le contenu du fichier de logs :

eclipse.buildId=unknown

...

!ENTRY org.eclipse.osgi 4 0 2017-10-19 16:22:10.537
!MESSAGE Bundle reference:file:org.apache.ant_1.8.3.v201301120609/@4 not found.

Vous m'en direz tant ! Tout ça n'est absolument pas stable ... il manque un serveur apache ?

Popup Systray for Xamarin
Bon bas ok, allons-y, encore une installation.

Xamarin 4.7.10.22
It's not fun! Not at all!

Le processus est tellement gourmant en ressources que j'ai cliqué comme un culbuto deux fois avant qu'il ne se lance. L'interface est la suivante et l'on va apprendre à s'en servir ...

Android Device Monitor
To Be Continued ...

On reprend depuis le début

Et pendant que j'y suis, si je passais à Visual Studio 2017 Community.

Installation Mobile pour Visual Studio 2017

Parce que les ingénieurs de la société de Redmond sont joueurs, l'installation/modification de Visual Studio 2015 et de Visual studio 2017 ne se passe pas de la même façon.

Installation de Visual studio 2015

Hou, hou c'est tout noir.

Installation/Modification Visual Studio 2015
J'avais déjà détaillé tout ça. Comme on l'a vu pas facile de créer une application pour Android qui fonctionne. Je ben je recommence avec Visual Studio 2017.

Panneau de configuration -> Programmes et fonctionnalités -> Visual Studio 2015

Installation de Visual Studio 2017

Vous aurez remarqué l'installeur dans le menu Démarré :

Installeur de Visual Studio 2017
On obtient le même résultat en passant par le panneau de configuration mais que faut-il installer ? Aujourd'hui la doc est en anglais et ne correspond pas à celle de VS 2015.

Un rapide coup d'œil à la page suivante :

What's New in Visual Studio 2017

Pour se rendre compte que les choses ont changées : Visual Studio starts faster LoL MDR ... tout ça pour ça les ingés de Redmond sont véritablement facétieux.

"Visual Studio helps you stay focused on the big picture, especially for teams embracing DevOps."

Voilà c'est parfait pour les équipes qui se focalisent sur le DevOps.

Ce qu'il y a de nouveau dans Visual Studio 2017

Gérer le démarrage et les extensions au démarrage, un menu vous permet de faire cela :

Aide -> Gérer le niveau de performance de Visual Studio
A l'intérieur, on trouve :

Gérer le niveau de performance de Visual Studio
Franchement ... mais à quoi ça sert ?

Gestion des extension itinérantes

Dans le menu Outils :

Visual Studio -> Outils -> Extensions et mises à jour
Trois type d'icônes indiquant trois types d'itinérance :



• Roaming Roamed: Une extension qui fait partie de cette liste d'itinérance, mais qui n'est pas installée sur votre machine. (Vous pouvez les installer en utilisant le bouton Télécharger.)
• Roaming & Installed Roamed & Installed: Toutes les extensions qui font partie de cette liste d'itinérance et qui sont installées dans votre environnement de développement. (Si vous décidez que vous ne voulez pas vous déplacer, vous pouvez les supprimer en utilisant le bouton Arrêter l'itinérance.)
• Installed: toutes les extensions installées dans cet environnement, mais ne faisant pas partie de votre liste d'itinérance. (Vous pouvez ajouter des extensions à la liste d'itinérance à l'aide du bouton Démarrer l'itinérance.)

Vous n'y comprenez rien, ce n'est pas grave sans doute encore une fonctionnalité que ne restera pas ... ;-)

Le suite de l'installe c'est dans Visual Studio (2017) and Xamarin -> Setup and install

Modification de l'installation Visual studio 2017

Il faut donc lancer l'installeur de Visual Studio 2017 et cocher le bon bloc dans : Mobile et jeux (5) -> Développement mobile en .NET 
Installation Visual Studio 2017 -> Xamarin

Au moment de cliquer sur le bouton "Modifier"


ArrrGGG !
Mon disque "C:\" de 120 Go est déjà saturé pas assez de place pour installer les 18,77 GB nécessaires à l'installation  du package "Développement mobile en .NET Générez des applications multiplateformes pour iOS, Android ou Windows avec Xamarin".

Au secours ! Je vais faire un peu de place et je reviens ... ou pas !

Une demi journée après ...

Vérifier votre environnement Xamarin

Voilà une bonne chose, la possibilité de vérifier si tout est bien installé. Seulement voilà, même s'il est indiqué "Toutes les plateformes" c'est pour Visual Studio 2015 et pour VS 02017 c'est en anglais.

On créé un projet Xamarin :

Mon premier projet avec Xamarin
Trois types de modèles avec Xamarin :
  • Cross Platform App
  • Class Library
  • Application de Test d'UI
Choisir Cross Platform App le choix suivant est parmi :

Choix d'une application cross plateforme parmi - Blank ou Master Details
  • Blank App UWP (Universal Windows Platform)
  • Master Détails UWP with master-detail navigation pattern
Blocage du firewall :


Création de mon premier projet Xamarin

Choisissez la cible et les versions de la plateforme minimales prise en charge par votre application ... Oh pu(bip). On dirait bien que pour bosser avec tout ça il faut Visual Studio 2017 sur Windows 10. Et cela ne m'arrange pas !

D'ailleurs voici la prochaine Error Box :

Mon premier projet Xamarin créé avec Visual Studio 2017 et Windows 10 minimum !

Et en effet le projet UWP n'a pas été créé mais deux autres projets sont là :

Visual Studio 2017 - Xamarin - Windows 7
Je choisi Android, je clique bouton-droit "Choisir comme projet de démarrage."

Bouton droit sur Généré : Ca ne fonctionne pas !


Voici la sortie "Xamarin Diagnostics" :



Et l'exécution de l'application:

???
En fait, c'est l'émulateur qui s'exécute tout seul sans l'application.

Erreur au démarrage d'un émulateur incompatible avec ma plateforme de DEV
Ca ressemble à comme qui dirait qu'il faut acheter un nouveau PC avec un hard un peu plus étoffé et surtout un Windows 10 ...

Moi je sens que je vais aller à la plage ! Ou plutôt, je vais courir acheter un PC Windows 10 pour faire tourner tout ça !

Ou bien reprendre calmement en lisant tranquillement ici :
https://developer.xamarin.com/guides/

Nous verrons plus loin qu'il y a moyen de continuer en mettant à jour la plateforme.