Initiation au développement mobile sous Android

Preview:

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 ...

Citation preview

Initiation au développement Mobile :Android

Abdelkader Rhouati

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

Plan

Contraintes & Conception Environnement et Plateforme Hello World APP Pour allez plus loin IOS vs Android Conclusion

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

Contraintes & Conception

Contraintes 1 : multitudes de « devices »

Samsung, Sony, STC, Nexus … Et les TablettesSamsung, Sony, STC, Nexus … Et les Tablettes

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

Contraintes 2: différents écrans

Tailles petites / différentesTailles petites / différentes

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

Conception : Technique

Conception : Graphique

Environnement et Plateforme

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

Architecture de la plateforme

Architecture en plusieurs couchesArchitecture en plusieurs couches

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

Hello World APP

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

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

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 )

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

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

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

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

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

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

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

Hello World APP : Les valeurs statiques

Plusieurs types de donnée : string, array, color, dimension …Plusieurs types de donnée : string, array, color, dimension …

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 »

IOS vs Android

Réference

developer.android.com

code.google.com/p/apps-for-android/

stackoverflow.com

Les vidéos du Google I/O conferences

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 !!!

Contact

@arhouati

http://www.facebook.com/abdelkader.rhouati/

abdelkader.rhouati@gmail.com

http://fr.slideshare.net/arhouati

Recommended