initiation au développement mobile sous android
DESCRIPTION
Présentation animée en faveur des étudiantes de l’Ecole Nationale des Sciences Appliquées d'Oujda à l'occasion des "open source Day's". L'objectif est d'initier les personnes aux notions basique du développement sous Android : - Environnement de développement et plateforme - Création d'une première application - Découvrir les notions d'Activité, de layout ...TRANSCRIPT
![Page 1: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/1.jpg)
Initiation au développement Mobile :Android
Abdelkader Rhouati
![Page 2: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/2.jpg)
Pré-requis
Des Bonnes connaissances en Java :
Héritage, polymorphisme (Surcharge et redéfinition)Interfaces, Casting ExceptionsDébogage
Eclipse : une Bonne maitrise de l’outil
![Page 3: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/3.jpg)
Plan
Contraintes & Conception Environnement et Plateforme Hello World APP Pour allez plus loin IOS vs Android Conclusion
![Page 4: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/4.jpg)
Android
Android est : • Système d’exploitation destiné au SmartPhone
• Open source et basé sur Linux
Et il offre une API Java pour développement d’application mobile
Développé par Google en sa première version en 2008,La dernière version est Kitkat (4.4) sortie en SeptembreDéveloppé par Google en sa première version en 2008,La dernière version est Kitkat (4.4) sortie en Septembre
![Page 5: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/5.jpg)
Contraintes & Conception
![Page 6: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/6.jpg)
Contraintes 1 : multitudes de « devices »
Samsung, Sony, STC, Nexus … Et les TablettesSamsung, Sony, STC, Nexus … Et les Tablettes
![Page 7: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/7.jpg)
Contraintes 1 : Solutions
1- Conception technique optimisée1- Conception technique optimisée
2- Optimisation de la performance2- Optimisation de la performance
3- Une meilleure gestion de la mémoire3- Une meilleure gestion de la mémoire
4- Minimiser les scenarios utilisateurs 4- Minimiser les scenarios utilisateurs
![Page 8: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/8.jpg)
Contraintes 2: différents écrans
Tailles petites / différentesTailles petites / différentes
![Page 9: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/9.jpg)
Contraintes 2: Solutions
1- Pensez Mobile et Oubliez PC / WEB1- Pensez Mobile et Oubliez PC / WEB
2- Que l’essentiel par écran2- Que l’essentiel par écran
3- Utiliser les nouveaux atouts des devices 3- Utiliser les nouveaux atouts des devices
![Page 10: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/10.jpg)
Conception : Technique
![Page 11: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/11.jpg)
Conception : Graphique
![Page 12: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/12.jpg)
Environnement et Plateforme
![Page 13: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/13.jpg)
Télécharger Eclipse + SDK Android
https://developer.android.com/sdk/index.html
Via le lien
• Eclipse + Plugin ADT
• SDK Android Tools
• Plate-forme d'outils Android
Un nouveau éditeur a vu le jour cette année : Android Studio
Un nouveau éditeur a vu le jour cette année : Android Studio
![Page 14: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/14.jpg)
Architecture de la plateforme
Architecture en plusieurs couchesArchitecture en plusieurs couches
![Page 15: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/15.jpg)
Eclipse : Créer un AVD (Android Virtual Device)
Nom de l’émulateurType de device
SDK Target (Version)
Autres informations du device
On peut créer autant d’émulateur qu’on a besoinOn peut créer autant d’émulateur qu’on a besoin
![Page 16: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/16.jpg)
Hello World APP
![Page 17: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/17.jpg)
Hello World APP : Objectif
Créer une application simple qui afficher un message
Tutoriel de Google : http://developer.android.com/resources/tutorials/hello-world.html
![Page 18: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/18.jpg)
Hello World APP : Création de projet sur Eclipse
Une première application hello World comme exemple pour débuter
Une première application hello World comme exemple pour débuter
![Page 19: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/19.jpg)
Hello World APP : Arborescence
Code Java de l’activitéLe code source java
Code Java géneré par le SDK afinde lier les ressources au Code Java
Strings used in the program
Les ressources De l’app
Android Manifest
ImagesLayout de l’activité
Basé sur un modèle MVC : une séparation du traitement et de l’affichage
Basé sur un modèle MVC : une séparation du traitement et de l’affichage
( Contrôleur )
( Vue )
![Page 20: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/20.jpg)
Hello World APP : Android Manifest
Fichier XML contenant toutes les informations en relation avec l’application
Fichier XML contenant toutes les informations en relation avec l’application
![Page 21: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/21.jpg)
Hello World APP : Android Manifest via Interface graphique
Meilleure et facile manipulation des informations de l’application
Meilleure et facile manipulation des informations de l’application
![Page 22: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/22.jpg)
Hello World APP : Activité
• Une activité Android se concentre sur une seule fonctionnalité.
• La plupart des applications ont de multiples activités
Une activité = Un écranUne activité = Un écran
![Page 23: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/23.jpg)
Hello World APP : Activités appellent d’autres
Sous forme d’arborescence d’activités : Activité Principale / Activité suivante et précédente
Sous forme d’arborescence d’activités : Activité Principale / Activité suivante et précédente
![Page 24: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/24.jpg)
Hello World APP : Code Source d’activité
Il s’agit de du Contrôleur du design pattern MVC :traitement Métier
Il s’agit de du Contrôleur du design pattern MVC :traitement Métier
Hérite de la classe Activity
Indiquer le layout à utiliser
![Page 25: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/25.jpg)
Hello World APP : Layout
Il s’agit de de la vue du design pattern MVC :L’affichage
Il s’agit de de la vue du design pattern MVC :L’affichage
Noeud racine qui définit la méthode d’affichage des composants fils
Composants graphiques
Appel d’une variable définie dans le fichier string.xml
![Page 26: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/26.jpg)
Hello World APP : Layout via interface graphique
Cette interface n’est pas stable, il est préférable d’utiliser l’XML
Cette interface n’est pas stable, il est préférable d’utiliser l’XML
![Page 27: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/27.jpg)
Hello World APP : Les valeurs statiques
Plusieurs types de donnée : string, array, color, dimension …Plusieurs types de donnée : string, array, color, dimension …
![Page 28: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/28.jpg)
Hello World APP : Lancer l’application
L’émulateur Android du SDK n’est pas stable, je préconise l’utilisation des émulateurs « GenyMotion »
L’émulateur Android du SDK n’est pas stable, je préconise l’utilisation des émulateurs « GenyMotion »
![Page 29: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/29.jpg)
IOS vs Android
![Page 30: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/30.jpg)
Réference
developer.android.com
code.google.com/p/apps-for-android/
stackoverflow.com
Les vidéos du Google I/O conferences
![Page 31: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/31.jpg)
J’ai rien compris, peux tu répéter depuis le début ?
Finalement, à quoi sert ce fameux Android ? C’est un CMS ? Non ? Qui va avoir le
ballon d’or ? Messi ? Ronaldo ?.. ?
Surtout pas ces Questions !!!
![Page 32: Initiation au développement mobile sous Android](https://reader035.vdocuments.mx/reader035/viewer/2022062220/5577cf3ad8b42ae0418b4cad/html5/thumbnails/32.jpg)
Contact
@arhouati
http://www.facebook.com/abdelkader.rhouati/
http://fr.slideshare.net/arhouati