Outils pour utilisateurs

Outils du site


cours:plim:tutorial_xamarin

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
cours:plim:tutorial_xamarin [2016/10/12 11:48]
tigli
cours:plim:tutorial_xamarin [2016/10/12 12:10] (Version actuelle)
tigli
Ligne 4: Ligne 4:
 Nous avons vu précédemment qu'une application mobile pouvait être :  Nous avons vu précédemment qu'une application mobile pouvait être : 
   * une WebApp pure c'est à dire sans appel natif par l'​intermédiaire de javascript. Dans ce cas le problème reste celui du "​Responsive Design"​ ou comment adapter la WebApp aux caractéristiques du terminal (principalement à sa morphologie : taille écran, résolution ...). Ceci est apparu avec les MEDIA_QUERIES introduit dans les normes HTML5/CSS3. Cette approche reste néanmoins limitée pour accéder à des spécificités natives des cibles.   * une WebApp pure c'est à dire sans appel natif par l'​intermédiaire de javascript. Dans ce cas le problème reste celui du "​Responsive Design"​ ou comment adapter la WebApp aux caractéristiques du terminal (principalement à sa morphologie : taille écran, résolution ...). Ceci est apparu avec les MEDIA_QUERIES introduit dans les normes HTML5/CSS3. Cette approche reste néanmoins limitée pour accéder à des spécificités natives des cibles.
-  * Des applications Hybrides, qui peuvent être conçues sur la base de WebApp auxquelles on rajoute différentes librairies javascript pré-écrites (Hybrid Mobile App Frameworks) pour donner accès à des fonctionnalités natives des cibles. Nous pouvons citer : +  * Des applications Hybrides, qui peuvent être conçues sur la base de WebApp auxquelles on rajoute différentes librairies javascript pré-écrites (Hybrid Mobile App Frameworks) pour donner accès à des fonctionnalités natives des cibles. Nous pouvons citer [[https://​www.sitepoint.com/​top-7-hybrid-mobile-app-frameworks/​|par exemple]] ​
-    * Ionic  +    * [[http://​ionicframework.com/​|Ionic ]]
     * Mobile Angular UI      * Mobile Angular UI 
     * Intel XDK      * Intel XDK 
Ligne 18: Ligne 18:
   * Des applications natives multi-cibles,​ qui sont conçues sur la base d'un framework commun ​ mais qui permettent aussi de développer des spécificités selon les cibles en :   * Des applications natives multi-cibles,​ qui sont conçues sur la base d'un framework commun ​ mais qui permettent aussi de développer des spécificités selon les cibles en :
     - utilisant le TAG plateform dans les fichiers XAML de description d'​UI ​     - utilisant le TAG plateform dans les fichiers XAML de description d'​UI ​
-    - modifiant directement les projets spécifiques à chacune des cibles (Android, IoS, Windows Phone) adossés au projet "​partagé"​.+    - modifiant directement les projets spécifiques à chacune des cibles (Android, IoS, Windows Phone) adossés au projet "​partagé"​. On peut alors a proprement parler de multi-plateformes (cross-development) de par la possibilité qui est offerte de développer conjointement du code commun et spécifiques entre les différentes cibles avec un seul et même outils dans une seule solution.
    
 Cette Séance 4 a pour but d'​introduire Xamarin la plateforme de cross-développement maintenant rachetée par Microsoft. ​ Cette Séance 4 a pour but d'​introduire Xamarin la plateforme de cross-développement maintenant rachetée par Microsoft. ​
Ligne 30: Ligne 30:
   * [[https://​msdn.microsoft.com/​fr-fr/​library/​mt488769.aspx|Vérification de l'​Environnement Xamarin]]   * [[https://​msdn.microsoft.com/​fr-fr/​library/​mt488769.aspx|Vérification de l'​Environnement Xamarin]]
     * Si vous pouvez alors développer pour Android et Windows Phone, ça n'est pas le cas pour iOS. En effet les licences et outils de développement Apple nécessite le passage par un MAC en réseau doté des services de développement et de déploiement. Pour ceux qui voudraient tester, vous trouverez la marche à suivre dans [[https://​developer.xamarin.com/​guides/​ios/​getting_started/​installation/​windows/​introduction_to_xamarin_ios_for_visual_studio/​offline.pdf|Introduction to Xamarin.iOS for Visual Studio]]     * Si vous pouvez alors développer pour Android et Windows Phone, ça n'est pas le cas pour iOS. En effet les licences et outils de développement Apple nécessite le passage par un MAC en réseau doté des services de développement et de déploiement. Pour ceux qui voudraient tester, vous trouverez la marche à suivre dans [[https://​developer.xamarin.com/​guides/​ios/​getting_started/​installation/​windows/​introduction_to_xamarin_ios_for_visual_studio/​offline.pdf|Introduction to Xamarin.iOS for Visual Studio]]
 +
 +
 +Vous avez donc la possibilité,​ pour les développements Xamarin, d'​utiliser ​
 +  * Visual Studio Xamarin sur PC/​Windows ​
 +  * Xamarin Studio sur PC/​Windows ​
 +  * Xamarin Studio sur Mac
 +
 +Sachez néanmoins que ces IDE ne vous permettront par de développer pour n'​importe quelle cibles dans tous les cas. La figure suivante récapitule les différences.
 +{{:​cours:​plim:​tableau_comparatif_des_caracteristiques_entre_les_outils_xamarin.png?​600|}}
 === Installation d'​Emulateurs ​ === === Installation d'​Emulateurs ​ ===
     * Il nous faut maintenant être capables de récupérer les émulateurs dont nous aurons besoin. Pour cela nous pouvons ​ suivre les indications de [[https://​blogs.msdn.microsoft.com/​visualstudioalm/​2014/​11/​12/​introducing-visual-studios-emulator-for-android/​| l'​introduction aux émulateurs de Visual Studio]]     * Il nous faut maintenant être capables de récupérer les émulateurs dont nous aurons besoin. Pour cela nous pouvons ​ suivre les indications de [[https://​blogs.msdn.microsoft.com/​visualstudioalm/​2014/​11/​12/​introducing-visual-studios-emulator-for-android/​| l'​introduction aux émulateurs de Visual Studio]]
Ligne 61: Ligne 70:
 Note : Si vous rencontrez des problèmes de version de SDK pour le Designer Android, n'​hésitez pas à installer les SDKs les plus récents depuis le [[ http://​androidsdkoffline.blogspot.fr/​p/​android-sdk-tools.html| site]] ​ Note : Si vous rencontrez des problèmes de version de SDK pour le Designer Android, n'​hésitez pas à installer les SDKs les plus récents depuis le [[ http://​androidsdkoffline.blogspot.fr/​p/​android-sdk-tools.html| site]] ​
  
-Les principaux concepts que nous verrons en séance sont expliquer ​sur ces [[https://​msdn.microsoft.com/​fr-fr/​library/​mt679501.aspx|pages]].+La suite de ce tutorial s'​appuie ​sur les [[https://​msdn.microsoft.com/​fr-fr/​library/​mt679501.aspx|pages]]. 
 +Les principaux concepts y sont introduits :
  
 En particulier,​ nous verrons les différentes étapes du développement multi-plateformes : En particulier,​ nous verrons les différentes étapes du développement multi-plateformes :
Ligne 70: Ligne 80:
   * Terminer l’interface utilisateur avec une apparence native entre les plateformes   * Terminer l’interface utilisateur avec une apparence native entre les plateformes
  
-La suite de ce tutorial s'​appuiera ​sur un exemples concret à développer selon les indications suivantes ​: +Un projet est proposé qui ne travaille que sur le projet "​partagé"​ entre toutes les cibles pour la partie métier mais aussi UI. 
-[[https://​msdn.microsoft.com/​fr-fr/​library/​dn879698.aspx|Créer des applications Xamarin avec une interface utilisateur native dans Visual Studio +Il s'agit alors d'un pur projet multi-cibles. 
-]].+ 
 +La suite de ce tutorial s'​appuiera ​le document suivant ​:​[[https://​msdn.microsoft.com/​fr-fr/​library/​dn879698.aspx|Créer des applications Xamarin avec une interface utilisateur native dans Visual Studio ​]]. 
 + 
 +Dans ce cas les interfaces (UI) seront développées dans chacun des projets associés aux cibles spécifiques. l'UI sur Android sera développée dans le projet Android et l'UI sur Windows Phone dans le projet Windows Phone.  
 + 
 +Attention, le service météo proposé dans ce tutorial n'est pas toujours disponible. Vous pourrez alors utiliser l'API current weather data de [[ https://​openweathermap.org/​]] qui vous retournera des données météo en JSON (il vous faudra simplement vous inscrire pour une version gratuite et récupérer une clef d'​accès)
  
 === Un exemple qui vous intéresse pour le Projet du Module ...=== === Un exemple qui vous intéresse pour le Projet du Module ...===
cours/plim/tutorial_xamarin.1476265701.txt.gz · Dernière modification: 2016/10/12 11:48 par tigli