Transférer le contenu d’une boite mail @voila.fr vers un @outlook.fr

Utilisateur de Voila.fr … vous serez bientôt orphelin de votre messagerie fétiche le 12/01/2016 (http://www.voila.fr/pages/fermeture-mail-voila.html) …
A défaut d’un changement de stratégie de la part d’Orange concernant voila.fr, vous trouverez ci-après une méthode très simple pour transférer le contenu de votre boite @voila.fr vers un webmail Microsoft Outlook (outlook.fr, outlook.com, hotmail.fr, hotmail.com, …).

Pensez à configurer le transfert de mail sur le site voila.fr pour que les nouveaux mails arrivant sur votre mail @voila.fr soit transféré automatiquement sur votre mail @outlook.fr. Ce service n’étant assuré par Orange que pendant 6mois (http://www.voila.fr/pages/faq-fermeture-mail-voila-question-1.html#title2), n’oubliez pas de communiquer à vos correspondant votre nouveau mail @outlook.fr.

Marche à suivre :

Créez ou connectez-vous sur votre compte Outlook.fr (outlook.com, live.fr, hotmail.fr ou hotmail.com)
Ouvrez le menu de configuration (petit engrenage en haut à droite) et sélectionner « Option ».
2015-12-30 (9)

 

Sélectionnez « Importer des comptes de messagerie électroniques »
2015-12-30 (1)

 

Sélectionnez « Autre fournisseur de messagerie »
2015-12-30 (2)

 
Entrez ensuite votre adresse de messagerie @voila.fr et le mot de passe associé à votre compte : c’est obligatoire pour que votre boite mail Outlook.fr puisse se connecter aux serveurs de voila.fr pour télécharger vos anciens mails et les ajouter dans votre boite mail @outlook.fr. (Pour plus d’information, consultez le lien « Confidentialité »).
Cliquez sur le bouton « Importer »2015-12-30 (3)
Outlook.fr vérifie le compte de messagerie (validité du compte et du mot de passe, ….)
2015-12-30 (4)

 

Puis outlook.fr vous confirme que l’importation est lancée.
2015-12-30 (5)

 

Une fois cette confirmation reçue, vous pouvez vous déconnecter. Outlook.fr travaillera tout seul dans son coin pour récupérer vos mails et les ajouter automatique dans votre boite mail @outlook.fr. L’importation peut prendre du temps en fonction du volume de mail à transférer. 

La structure (les dossiers et sous dossiers) et le contenu (les mails) seront importés dans un dossier de votre boite outlook.fr appelé « Importés xxxx@voila.fr ».
2015-12-30 (6)

 
Outlook.fr affiche la progression de l’import en haut de la page.
2015-12-30 (8)

 

Voilà (sans mauvais jeux de mots ) , vous avez une nouvelle boite mail , fiable et pérenne , sans avoir perdu vos précieuses correspondances.

 

Catégories :Non classé, Ordinateurs et Internet Étiquettes : , ,

Mon source code dans GitHub

Je viens de publier dans github le code source de plusieurs de mes projets.

D’autres vont suivre …

Bonne lecture 🙂

 

http://github.com/flyingoverclouds/

Catégories :Non classé

Stockages et manipulations des données dans Microsoft Azure

Dans le cadre de mes activités en clientèle, j’ai très souvent des remarques concernant le stockage ou la manipulation des données dans Azure. Remarques ayant souvent pour source la méconnaissance de la plateforme. A décharge de mes contacts, Azure évoluant très vite et de nouvelles fonctionnalités étant ajoutées régulièrement il n’est pas forcement facile d’être systématiquement à jour !

D’où ce billet pour recenser les différentes options de stockage et manipulation de données disponible dans Azure.

La plateforme de cloud computing Azure de Microsoft fournit donc de multiples fonctionnalités de stockage. Des plus classiques (comprendre historique) aux plus récentes, commercialisées ou non par Microsoft.

A noter que certaines des options évoquées ci-après ne sont pas obligatoirement accessibles dans les 2 portails de gestion de vos sousciptions Azure (l’officiel http://manage.windowsazure.com, ou celui en beta : http://portal.azure.com/)

 

Par Microsoft dans Azure :

  • SQL Azure (relationnel en mode ‘cloud’ SAS, compatible SQL Server)
  • SQL Server (relationnel en mode serveur dans une/des machine(s) virtuelle(s))
  • Azure Storage 
    • Blob : stockage de donnée ‘binaire’ avec metadata. Utilisable en acces type « stream » ou direct (disque)
    • Queue : file de messages
    • Table : stockage de données non relationnel, par entité/colonne, schéma libre, requêtage limité, haute performance, grand volume de données, support transactionnel limité.
  • HDInsight : stockage HBase (nosql, transactionnel avec faible latence), prioritairement destiné à être exploité à travers Hadoop pour la manipulation et l’analyse de données façons ‘BigData’
  • Cache (en Preview) : base de donnée clé/valeur en mémoire, basé sur Redis
  • DocumentDB (en Preview) : base de données NoSQL orienté document en mode SAS.
  • Azure Search (en Preview) : moteur d’indexation en mode SAS (accessible uniquement sur le portail beta http://portal.azure.com ). Permet d’indexer vos jeux de données et fournit des fonctionnalités de type intellisense, correction orthographique, recherches par synonymes ou approchants.
  • StorSimple : stockage avec appliance hardware local jouant le rôle de cache avec débord persistant dans Azure. Permet d’avoir de gros volume de données stockés dans Azure avec un cache local dans votre infrastructure afin d’optimiser les temps d’accès et donc améliorer les performances des vos applications.
  • Recovery Service : destiné à archiver et gérer les backups de vos systèmes

 

Par Microsoft hors Azure :

  • OneDrive (indirectement via les apis)
  • Office365 (Sharepoint)

 

Autres éditeurs  avec facturation et réservation totalement ou partiellement intégrée (se reporter aux sites des éditeurs pour plus d’informations) :

  • ClearDB : base de données relationnelle compatible MySQL en mode SAS.
  • MongoDB : (edition Enterprise) base de données noSQL orienté document en mode SAS
  • MongoLab : autre commercialisation de MongoDB  en mode SAS.
  • RavenDB : base noSQL orienté document en mode SAS
  • Oracle DB 12c Standard/Enterprise Edition + Windows Server 2012
  • Oracle DB 11g R2 Standard/Enterprise + Windows Server 2008 R2
  • Oracle DB 11g Standard/Enterprise + Windows Server 2008 R2
  • Oracle DB 12.1.0.1 + Oracle Linux 6.4

 

 

En se référant au classement de db-engines.com (http://db-engines.com/en/ranking), on constate qu’Azure supporte donc directement 4 moteurs de bases de données du TOP5 . A noter que même si PostgresSQL (ainsi que d’autre bases de données plus exotiques) ne sont pas directement accessible à partir du portail de services Azure, il est tout à fait possible de déployer déployer ces bases sur une machine vituelle en mode IaaS (windows ou linux).

Au final, Azure supporte donc 100% des bases de données du TOP 5 db-engines.com.

dbenginesseptembre2014

 

Attention : la plupart des services évoqués ci-avant ont un coût d’utilisation variable. Reportez-vous aux conditions d’utilisations ou de vente de ces services pour obtenir les informations de tarifications officielles.

Catégories :Cloud, Microsoft, Windows Azure Étiquettes : , , , , ,

Tablet low cost Android et le mode développeur ….

Vous avez acheté une tablette Android Low cost récente (Android 4.2, 4.3 ou 4.4) pour vos dev (Xamarin .Net pour moi, mais c’est valable pour d’autres technos aussi), et vous avez un coup de stress car vous ne trouvez pas les « options pour les développeurs » dans la config …

Pas la peine de pester contre l’hypermarché où vous l’avez acheté (enfin … si, mais pour d’autres raisons), c’est normal : elles ne sont plus accessibles directement (pour éviter que Mr Lambda ou Mme Michu fasse n’importe quoi ?!? ).

Pour y accéder :

  • ouvrez la partie configuration d’Android,
  • sélectionnez « A propos de la tablette »  (About tablet), la partie droit de l’appli affiche les informations de version
  • tapez 7 fois sur le « Numéro de BUILD » pour activer le mode développeur (ma tablette en Android KitKat 4.4, m’affiche un compte a rebours a partir du la 4e ou 5e touch)
  • Sélectionnez le menu « Options pour les développeurs » qui est maintenant visible au dessus du menu « A Propos de la tablette ».
  • En haut à droite de l’écran, une checkbox est sur « Non », touchez la pour passer à « Oui », la tablette vous demande confirmation pour « Activer les paramètres de développement » … confirmez.
  • Vous pouvez maintenant cocher l’option « Debogage USB » ou activer les autres options qui vous sont nécessaires.

A vos devs !

 

ps : si vous ne voyez pas la tablette dans vos environnements de dev, reportez vous à ces 2 billets :

Starter kits et Template d’applications pour Windows 8

Personne n’est parfait … et un bon développeur n’est pas forcément (voire rarement) un bon designer. Lors de la création d’application Windows 8 (pour le Store), les quelques templates par défaut fournit par Visual Studio bien que respectant les règles d’ergonomie du Modern Design, n’en reste pas moins extrêmement tristounet et incomplet.

Même si rien ne remplace le travail d’un vrai ergonome et d’un vrai designer pour obtenir un look et une ergonomie parfaite pour nos applications, il est toujours intéressant de posséder une base de template d’application complet et respectant Modern UI (des starter kits donc 🙂 )

Le web regorge d’exemples et de templates (gratuit ou non) pour le web, beaucoup moins pour nos applications Windows 8. Néanmoins, il existe sur codeplex une des plus belles collections que j’ai pu trouver (www.codeplex.com). Certains de ces templates sont un peu basique, certains très spécifiques, mais la plupart peuvent constituer une excellente base de départ pour des applications Windows 8 basé sur Modern UI.

 

Snapshop template Windows 8

La plupart des templates sont fournis en version C# et JS, ainsi qu’avec des captures écrans dans chaque zip pour se rendre compte du rendu des projets.

 

Basique :

 

Business :

 

ECommerce :

 

Medias :

 

Image, musique et vidéos :

 

Social :

 

Santé et alimentation :

 

Style de vie :

 

Education :

 

Divers :

 

Catégories :.NET, Windows 8

Xamarin.Forms et les ressources graphiques embarquées – Tip & Tricks & Warning

Lors de la création d’une solution Xamarin.Forms ( 3 projets spécifiques à chaque plateforme mobile, et un projet commun) , la gestion des images et des ressources embarquées (Embedded Resources) est un peu déroutante (même les forums Xamarin ne sont pas d’une aide énorme 😦 et témoigne d’un certain flou sur ce sujet).

Dans tout projets mobiles, il a des ressource graphiques (image, icône, vidéo, audio) qui doivent être insérées dans votre projet.

Quand on fait du spécifique , on ne se pose pas de question. Avec les Xamarin.Forms, il y a plusieurs possibilités et plusieurs manières de gérer les ressources, avec des variations sur leur utilisation dans le code.

La première question à se poser :

  • Est ce un élément spécifique à une plateforme mobile ? Ex : l’image de splashscreen d’une application Windows Phone
    ==> l’élément doit être placé dans le projet propre à la plateforme , et les différent option de compilation spécifique utilisé (Content pour Windows Phone, Android Resource, Bundle pour Android) …
  • Est ce un élément commun utilisé par la partie Xamaring.Forms de l’application ? ex : des images qui compose les écrans, …
    ==> l’élément doit être placé dans le projet commun ( le projet PCL ou le Shared Project) et l’option de compilation positionné à « Embedded Resource« 

Ensuite, l’utilisation de cette ressource embarquée (Embedded Resource) passe par l’utilisation de son nom de ressource. Or, dans ce le cas de Xamarin pour Visual Studio, il n’est pas possible de connaître dans l’IDE le nom de la ressource.

Un petit coup de JustDecompile permet de comprendre la règle de nommage des ressources embarquées (dans le cas d’un projet Portable)  :

  • NomDuProjet.Folder1.Folder2.NomDuFichier

 

XaraminFormsResourcesWithPCLProject

Ainsi pour une image appelée ( SplashScreen_720x1280.JPG), placée à la racine du projet « MonProjetDemoXF », son nom de ressource sera « MonProjetDemoXF.SplashScreen_720x1280.JPG« , et pour une images « Logo.JPG » placé dans le dossier « Images » du même projet, son nom de ressource sera « MonProjetDemoXF.Images.Logo.JPG« 

 

La création d’une view Image utilisant cette image se fera avec le bout de code suivant :

    new Image() {
         Source = ImageSource.FromResource(« MonProjetDemoXF.SplashScreen_720x1280.jpg »)
            }

 

MAIS ATTENTION : il s’agit de la règle générale (prendre le nom du projet en préfixe et les sous dossiers). Dans le cas d’un projet commun de type « Portable Class Library », le cas présenté ci avant est exact. Lors de la compilation, le projet PCL génère sa propre assembly et les règles de nommage découle de cette assembly.

MAIS dans le cas d’un « shared project », il n’y a pas de compilation du shared project en tant que tel (pas d’assembly généré), mais une fusion des sources du ‘shared project’ avec les sources du projet le référençant, puis la compilation du résultat de cette ‘fusion’. Ce comportement implique que le nom du projet utilisé pour générer le nom de la ressource est celui du projet référenceur. Or, les projets mobiles ont des noms différents pour chaque plateforme : « MonProjet.WinPhone », « MonProjet.iOS » et « MonProjet.Android », ce qui implique que la ressource issue du ‘shared project’ a un nom différent pour chaque plateforme !!!

De plus, les noms des sous dossiers ne sont pas repris dans le nom de la ressources !!

XaraminFormsResourcesWithSharedProject

 

Voilà : à l’usage on verra quelle solution est la plus performante, mais en terme de réutilisabilité et de testabilité le projet PCL permet d’éliminer les aléas de nommages des ressources.

Xamarin 3 Rocks ! (quand même 🙂 ).

 

Catégories :.NET, Mobilité, Visual Studio, Xamarin Étiquettes : , , , ,

Utiliser un Nokia X dans un environnement de développement Xamarin

Vous avez un Nokia X ? Vous souhaitez l’utiliser comme téléphone de développement, mais il n’est pas reconnu par le SDK Android et donc invisible comme cible de développement pour les outils de Xamarin ?

nokia_x_device_manager

La procédure est la même que pour les périphériques ‘exotiques’ décrite dans mon premier billet : https://nicolasclerc.wordpress.com/2013/12/26/installation-des-outils-de-xamarin-avec-des-configurations-exotiques-partie-1/

  • Installez les drivers Intel pour Android
  • Forcez l’utilisation du driver « Android Composite ADB Interface » sur le périphérique « Nokia_X (RM-980) »
  • Vérifiez avec adb que votre téléphone est maintenant bien visible : votre Nokia X est maintenant listé avec le nom « d71d479 » (ou peut être une variante …)

nokia_x_adb_devices

  • Lancez Visual Studio et ouvrez un projet Xamarin ciblant Android, votre Nokia X est maintenant visible et utilisable en débogage 🙂

nokia_x_visual_studio2013

 

A vous de coder !

 

 

 

Catégories :.NET, Mobilité Étiquettes : , , , ,

IE11 “developer mode” freeze …

Lorsque vous activez le mode développeur d’Internet Explorer 11 (IE11) avec la touche F12, votre navigateur se bloque …

Il s’agit d’un bug identifié lié à l’onglet “Network monitoring” (et “profiler” aussi d’après mes tests). Lorsque cet onglet est le dernier utilisé (et donc le premier à se rouvrir), il plante lors de l’activation suivante et bloque IE11.

Mais … un contournement existe, il faut modifier une valeur de la base de registre correspondant au dernier plugin développeur utilisé par IE11 :

             HKEY_CURRENT_USER\Software\Microsoft\F12\lastselectedpluginid

 

Les valeurs décimale suivantes de démarrage (présente en base de registre lors de l’activation du mode développeur) correspondent aux différents onglets du mode développeur :

  • 1 = FREEZE if initial value / Network monitor
  • 2 = FREEZE if initial value / Profiler
  • 3 = –> 5
  • 4 = Javascript Console
  • 5 = DOM Explorer
  • 6 = Debugger
  • 7 = Emulation
  • 8 = –> 5
  • 9 = Memory profiling
  • 10 = UI performance profiling

Voila, de quoi remettre d’aplomb le mode développeur d’IE11 qui pose plus de soucis de stabilité que celui IE 10 Triste

Catégories :Dev Étiquettes : , , ,

Installation des outils de Xamarin avec des configurations exotiques – partie 2

Si ce n’est déjà fait, je vous recommande fortement la lecture du 1er billet de cette série : https://nicolasclerc.wordpress.com/2013/12/26/installation-des-outils-de-xamarin-avec-des-configurations-exotiques-partie-1/

Et comme promis, la deuxième partie de cette série de billet concernera l’utilisation d’une tablette exotique (‘marque de distributeur’, made in china et 100% low cost) sur un poste de développement Xamarin/Microsoft.

La tablette utilisée dans ce billet a été acheté dans un magasin Carrefour lors d’une promo de rentrée en 2012.

image

Elle est équipée avec :

  • Android 4.0.3 ICS sans le playstore (elle ne respecte pas les préconisations hardware de Google pour ICS)
  • CPU Rockchip Cortex A8 à 1ghz
  • Ecran 7pouces 800×480
  • 512Mo RAM, 4Go de stockage

Il s’agit donc d’une tablette bas de gamme, dont le principal avantage est le prix.

Connexion au PC

La première étape est donc de s’assurer que le PC reconnait bien le device lorsqu’il est connecté.

Au préalable, la tablette a été configuré en mode ‘débogage USB’.

Lors de la connexion de la tablette, Windows identifie un périphérique ‘CT705FR’ mais n’arrive pas à trouver les pilotes de périphériques. Pour installer les pilotes, je vous renvoi à la 1ere partie de cette série de billet (https://nicolasclerc.wordpress.com/2013/12/26/installation-des-outils-de-xamarin-avec-des-configurations-exotiques-partie-1/)

image

Après cette étape la tablette est bien identifiée comme un ‘Android phone’ par Windows.

Mais

(ben oui, il faut bien justifié ce 2e billet ),

Si je lance mon Visual Studio (avec les outils Xamarin installés) et que je rouvre le projet créé dans le billet précédent, ma liste des cibles de débogage ne mentionne pas la tablette comme on aurait pu s’y attendre.

Vous pouvez tenter des reboots du PC, de la tablette, essayez de rooter la tablette, faire bruler des cierges ou installer votre tablette à côté d’une corbeille de fruit, rien n’y fera. 70€ de perdu … que neni ! Il suffit de continuer à lire J

Le rôle d’ADB

ADB (Android Debug Bridge) est un utilitaire faisant partie du SDK Android qui a été installé par l’installeur Xamarin. Cet utilitaire fait la passerelle entre vos outils de développement et le périphérique Android sur lequel le débogage USB est activé.

ADB peut être interrogé en ligne de commande. On va vérifier les périphériques détectés par ADB :

Ouvrir une fenêtre de ‘ligne de commande’, et positionnez-vous dans le dossier du SDK Android (dans mon cas, il se trouve dans le dossier : C:\Users\Nicolas\AppData\Local\Android\android-sdk , à adapter en fonction de votre installation)

Adb.exe se trouve dans le sous-dossier platform-tools (ou le sous-dossier tools si votre sdk est ancien)

Exécuter la commande ‘adb devices –l’ pour obtenir la liste des devices reconnus par adb.

image

Le résultat est sans appel : rien !

Donc : bien que Windows ait reconnu notre tablette, que le driver système ait été chargé, adb continue à ne pas aimer notre tablette comme cible de débogage.

En fait, par défaut ADB reconnait uniquement un certain nombre de devices (ceux vendus par Google et les principaux fabricants, ce qui explique que notre téléphone HTC est été reconnu d’emblée mais pas notre tablette exotique)

Je vais vous décrire la marche à suivre totalement générique pour configurer ADB pour supporter votre device. Cette démarche est la même quel que soit le périphérique Android du moment que Windows le reconnait. Il faut la réitérer pour chaque device non reconnu par ADB. Cette méthode est aussi utilisable pour ceux qui font du développement natif (java) pour Android.

Pour se faire, il vous faut connaitre l’identifiant USB du fabricant de votre device. Dans le cas des grandes marques s’est assez simple, dans le cas des périphérique noname ou MDD (Marque De Distributeur) ce n’est pas facile.

Récupérer l’identifiant du fabricant de votre device

Le plus simple est de le récupérer dans le gestionnaire de périphériques Windows :

  • Lancer l’outil de gestion l’ordinateur,
  • Sélectionnez la section « Gestionnaire de périphériques »,
  • Ouvrez le nœud « Android Phone »
  • Faites un clic droit sur votre device et sélectionner « Propriétés »

image

  • Allez dans l’onglet ‘détails’
  • Dans la liste déroulante ‘Propriété’, sélectionnez ‘Numéro d’identification du périphérique’

image

La valeur qui nous intéresse est celle qui suit ‘USB\VID_’, soit 2207 (en hexadecimal), il s’agit de l’identifiant du fabricant du périphérique USB.

 

Forcer ADB à accepter notre ‘fabricant’

Une fois l’identifiant du fabricant de notre device connu, il ‘suffit’ maintenant de l’ajouter dans un obscure fichier de configuration qui se trouve dans le dossier ‘.android’ dans votre dossier utilisateur. Sur mon poste, il s’agit donc du dossier C:\Users\Nicolas\.android

Dans ce dossier, éditez (ou créez) le fichier ‘adb_usb.ini’ avec votre éditeur de texte préféré (notepad++ ou même Visual Studio). Le notepad.exe de Windows ne gère pas correctement les retours à la ligne ‘sauce Unix’, à éviter donc.

Ajoutez une ligne de texte ‘0x2207’ (2207 étant à remplacer par l’identifiant de votre fabricant que vous aurez relevé à l’étape précédente. Dans mon cas, 0x2207 est l’identifiant du fabricant de la tablette Carrefour CT705).

image

Il faut ensuite redémarrer le serveur ‘adb’ pour qu’il prenne en compte le nouveau fichier de configuration : exécutez la commande ‘adb kill-server’ puis ‘adb start-server’, puis vérifiez la détection de votre device  avec la commande ‘adb devices –l’:

image

Ça marche !!! ADB accepte notre tablette maintenant. Dernière vérification avec Visual Studio (relancer le pour rafraichir la liste des devices de debug) :

image

A vous le débogage Android sans vous ruiner en device !

Néanmoins, un panel significatif des différents types de devices (puissance CPU, version OS, résolution écran) est fortement recommandé afin de tester vos applications dans différents cas d’utilisation. L’utilisation de périphérique low cost permet d’équiper une équipe complète à moindre cout, tout en mutualisant des périphériques plus couteux pour les phases de test et de validation.

Et puis, commencer avec une cible de faible puissance pousse à optimiser son code dès le début.

Voilà : ces 2 billets vous permettent de commencer sereinement le développement .Net sur Android avec les outils de Xamarin , Visual Studio et les périphériques exotiques qui pullulent en cette fin d’année connectée et high-tech ; que vous les ayez reçu en cadeau ou que vous comptiez en offrir à vos collaborateurs.

 

Je profite de ce dernier billet de 2013 pour vous souhaiter un bon réveillon, et tous mes meilleurs vœux pour cette nouvelle année 2014 qui débutera dans quelques heures.

Catégories :.NET, Mobilité Étiquettes : , , ,

Installation des outils de Xamarin avec des configurations exotiques – partie 1

Après quelques mois de silence blogistique (mais pas d’inactivité professionnelle, rassurez-vous), je suis de retour sur mon blog technique.

Et comme cadeau pour les fêtes de fin d’année, j’ai décidé de compiler les solutions à différents tracas rencontrés lors de la configuration d’un poste de développement pour utiliser les outils de Xamarin (http://www.xamarin.com).

Pour ceux qui ne connaîtraient pas Xamarin, cette société s’est spécialisée dans l’édition d’outils de développement .Net (éditeur, framework, clr) visant les plateformes sur lesquelles Microsoft ne propose pas de solutions officielles .Net :

  • iOs (iPhone, iPad, iPod)
  • Mac OS
  • Android

La relation entre Xamarin et Microsoft a été fluctuante aux fils des années, mais en 2013 un partenariat officiel a ‘enfin’ été signé entre les 2 sociétés : http://blog.xamarin.com/microsoft-and-xamarin-partner-globally/

Tout d’abord, soyons honnête, la plupart des tracas rencontrés ne concernent pas les outils de Xamarin mais les frameworks, sdk, outils tiers nécessaires ou device de développement.

Dans cette première série de billets, je vais me concentrer sur la configuration pour du développement ciblant Android. La configuration logicielle initiale (entièrement à jour au niveau des correctifs et updates) est :

  • Windows 8.1 FR 64 bits
  • Visual Studio 2013
  • Visual Studio 2010

L’installeur de Xamarin se charge d’installer l’ensemble des dépendances logicielles nécessaires :

  • JDK
  • Android SDK
  • MonoDroid (.Net pour Android)
  • MonoTouch (.Net pour iOs)
  • Xamarin Studio (environnement de développement ‘Visual Studio like’, disponible aussi sur Mac)
  • Extension de développement pour Visual Studio (développement Android & iOs)

L’utilisation d’un device physique quand on fait du développement Android sous Windows est importante. En effet, l’émulateur Android fournit par Google n’a jamais été réellement optimisé pour Windows et les émulations sont catastrophique de lenteur.

Les devices de développement

Précision utile : l’utilisation de device physique (téléphone ou tablette) pour le développement avec les outils de Xamarin nécessite une licence, la version d’évaluation ou gratuite ne permet que l’utilisation des émulateurs fournit par les SDKs, et ne permet pas le packaging pour le déploiement sur la différentes place de marché mobile.

Actuellement, j’utilise 2 périphériques physiques Android (un téléphone ‘ancien’, une tablette ‘grand public’ et ‘bas de gamme’) non rooté. Dans le cadre de développement grand public, il est néanmoins judicieux d’avoir un échantillon plus fournit à cause du foisonnement des systèmes tournant sous Android et leur grand variété. Ces 2 devices ne sont pas des bêtes de courses, mais l’avantage c’est qu’ils sont ‘représentatifs’ de la tranche basse (puissance ou version d’os) de ce que l’on peut trouver sur le marché grand public. Dans mon cas, il s’agit :

  • téléphone HTC Wildfire S A510e (équipe d’Android 2.3.5) certifié Google avec le PlayStore officiel
  • tablette ‘Carrefour’ CT705 (Android 4.0.3) sans Google Playstore mais avec le store GetJar

Les 2 devices sont configurés pour permettre le développement : le débogage est activé (option dans la configuration de votre device Android), le port USB est configuré pour la charge uniquement.

L’installation des outils de Xamarin s’étant déroulée sans soucis (prévoir quelques 2go de téléchargement si vous partez d’une machine vierge). Un petit projet de test pour Android est créé et lancé dans l’émulateur Android. Tout marche bien.

C’est lorsque j’ai tenté un debug sur le device que les soucis ont commencé : non reconnaissance des devices par Windows malgré le SDK Android installé. De fait, adb (l’outils du sdk Android utilisé en arrière-plan pour dialoguer avec un device Android pour du debug) ne voit pas les devices.

Driver Android pour le développement

Symptôme et explication :

Dans le cas du HTC Wildfire S, Windows 8.1 détecte bien un ‘Android Phone’ mais ne trouve pas le driver correspondant, y compris en effectuant une recherche sur Windows Update.

Résolution :

Apres plusieurs tentatives, la solution la plus fiable et la seule systématiquement reproductible consiste à installer les drivers Intel pour les périphériques Android. Bien que décrit comme ciblant les plateformes Android à base de processeur Atom, ces drivers fonctionnent très bien avec les architectures Arm (cas du Wildfire et de la tablette).

Autre soucis, l’installation de ces drivers sous Windows 8.1 échoue car l’installation ne reconnait pas la version de Windows. La solution consiste à lancer l’installation en forcant la compatibilité avec Windows XP SP3.

Marche à suivre :

clip_image002

  • Lancez ensuite l’installation en mode Administrateur
  • L’installation doit se dérouler sans soucis.
  • Connectez maintenant votre périphérique Android en USB. Windows le détecte mais le driver n’est toujours pas chargé.
  • Ouvrez le gestionnaire d’ordinateur (Explorateur de fichiers, puis bouton « Gérer » dans le ruban) et sélectionnez « Gestionnaire de périphérique » dans l’arborescence), votre périphérique doit apparaitre dans la branche « Autres périphériques » :

clip_image004

  • Faites un clic droit sur « Android Phone », sélectionnez « Mettre à jour le pilote »
  • Dans la fenêtre qui apparait, sélectionnez la 2e option « Rechercher un pilote sur mon ordinateur », puis cliquez sur « Choisir parmi une liste de pilotes de périphériques sur mon ordinateur »
  • Sélectionnez « Android Phone », puis « Android Composite ADB Interface », puis « Suivant »

clip_image006 clip_image008

  • Confirmez l’installation du driver si Windows vous affiche un « avertissement de mise à jour de pilote » : Windows effectue l’installation.
  • Un fois l’installation effectuée, le gestionnaire de périphériques affiche maintenant votre device dans la branche « Android Phone » sous le nom générique du driver.

clip_image010

  • Relancez Visual Studio , ouvrez ou créez un projet Android.
  • Dans la barre d’outils Xamarin, la liste déroulante des cibles de debug vous proposera maintenant votre device physique en plus des images pour de l’émulateur.

clip_image012

Cette procédure devrait marcher pour la plupart des device Android quelques soit leur fabricant. Néanmoins le marché android étant fortement éclaté entre de multiples acteurs de source et de qualité très variables, il n’est pas rare que l’étape décrite ci-avant ne soit pas suffisante, et Visual Studio ne vous listera pas votre périphérique comme cible d’un débogage. Ce risque est d’autant plus grand que le périphérique est d’origine « exotique » (cas de ma tablette MarqueDeDistributeur, fabriqué en chine et revendu sous la marque du distributeur).

La résolution de ces soucis de détection sera traitée dans le billet suivant qui sortira dans les prochains jours.

Affaire à suivre …

Catégories :.NET, Mobilité