Vous êtes sur la page 1sur 46

Env.

de Développement
Mobile
2017/2018

Mme. Sajeh ZAIRI CHIHI


sajehzairi@gmail.com

Ecole Supérieure d’Economie Numérique

Université de la Manouba

-1- -1-
Architecture de la plateforme

-2-
Architecture de la plateforme

Le Noyau Linux

 Device drivers
 Memory management

 Process management

 Networking

-3-
Architecture de la plateforme
Bibliothèques
 Ecrites en C/C++

 Accès à travers des interfaces Java

 Surface manager

 2D and 3D graphics

 Codecs Media , SQLite, …

-4-
Architecture de la plateforme

Android Runtime

 Machine Virtuelle Dalvik

Un ensemble de librairies noyau qui fournissent la


plupart des fonctionnalités disponibles dans les
librairies noyau du langage de programmation
Java

-5-
Architecture de la plateforme

Application Framework

 Interfaces API
 Activity manager – permet de gérer le cycle de

vie d’une application

-6-
Architecture de la plateforme
Applications

 un client mail,
 un programme pour les SMS,

 calendrier,

 cartes,

 navigateur,

 contacts, et d’autres.

-7-
Concepts fondamentaux
Concepts fondamentaux à préciser :

 les activités ;

 les vues et contrôles (et leur mise en page) ;

 les ressources ;

 le fichier de configuration appelé également


manifeste.

-8-
Concepts fondamentaux

Les vues

Éléments de l’interface graphique vus par


l’utilisateur et sur lesquels il pourra agir

Les vues contiennent des composants, organisés


selon diverses mises en page (les uns à la suite
des autres, en grille…)

-9-
Concepts fondamentaux

Les contrôles

boutons, champs de saisie, case à cocher, etc.


Eux-mêmes un sous-ensembles des vues

Ils ont besoin d’accéder aux textes et aux images


qu’ils affichent (par exemple un bouton
représentant un téléphone aura besoin de
l’image du téléphone correspondante)

- 10 -
Concepts fondamentaux
Une activité

Assimilée à un écran structuré par un ensemble de


vues et de contrôles composant son interface de
façon logique

Exemple :
– un formulaire d’ajout de contacts
– un plan Google Maps sur lequel vous ajouterez de l’information
Une application comportant plusieurs écrans,
possédera autant d’activités

- 11 -
Concepts fondamentaux
Le fichier de configuration XML

Indispensable à chaque application

Il décrit entre autres :


 le point d’entrée de votre application (quel code
doit être exécuté au démarrage de l’application) ;
 quels composants constituent ce programme ;
 les permissions nécessaires à l’exécution du
programme (accès à Internet, accès à l’appareil
photo...).

- 12 -
Concepts fondamentaux

- 13 -
Composantes d’une application Android

Composants applicatifs :
Activités ;
Services ;
Fournisseurs de contenu ;
Gadgets.

Éléments d’interaction :
Objets Intent ;
Récepteurs d’Intents ;
Notifications.

- 14 -
Composants applicatifs

Activity (Activité)
 bloc de base d’une application

 la partie présentation de l’application

 fonctionne par le biais de vues affichant des

interfaces graphiques et répondant aux


actions utilisateur
 correspond à un écran incluant, parfois,

plusieurs vues

- 15 -
Composants applicatifs
Content providers (fournisseurs de contenus)
gérer et partager des informations

Un même fournisseur permet d’accéder à des


données au sein d’une application et entre
applications (partage des données)

- 16 -
Composants applicatifs
Service
composant fonctionnant en tâche de fond, de
manière invisible

Ses principales utilisations sont :


 la mise à jour de :

 sources de données

 activités visibles

 le déclenchement de notifications

- 17 -
Composants applicatifs
Gadget
composant graphique s’installant sur le bureau
Android.

Exemple :
 Le calendrier

 Le lecteur audio

- 18 -
Éléments d’interaction

Vous pouvez non seulement répondre aux


intentions, mais également créer les vôtres afin
de lancer d’autres activités ou pour vous prévenir
qu’une situation particulière a lieu

Exemple :
émettre l’intention X lorsque l’utilisateur est à
moins de 100 mètres d’un emplacement Y

- 19 -
Éléments d’interaction
Intents (intentions)
des messages système

Emises par le terminal pour prévenir les


applications de la survenue de différents
événements,

Exemple : une modification matérielle (comme


l’insertion d’une carte SD) ou l’arrivée de
données (telle la réception d’un SMS)

- 20 -
Éléments d’interaction
Récepteur d’Intents

permet l’écoute des autres applications afin de


répondre aux objets Intent qui lui sont destinés
et qui sont envoyés par d’autres composants
applicatifs

- 21 -
Éléments d’interaction
Notification

signale une information à l’utilisateur sans


interrompre ses actions en cours

- 22 -
Cycle de Vie d’une
application Android

- 23 -
Première application Android

On clique sur la deuxième icône (créer un


projet Android) et on aura une boite de
dialogue qui va nous permettre de créer
notre application

- 24 -
Première application Android

- 25 -
Première application Android
Project name : Ce nom de projet est totalement
indépendant de votre application Android. Ce
n’est en fait que le nom donné à votre projet
dans votre Workspace sous Eclipse.

Build Target : Spécifier L'API qu'on souhaite


utilisé : Android 1.5 ou Android 1.6 … selon les
besoins de notre application et les services qu'on
souhaite utilisées.

Application Name
- 26 -
Première application Android

Package Name : Par convention, le nom du package


s’écrit selon la forme suivante :
extension_de_votre_domaine.nom_du_domaine.
nom_du_projet
Exemple : com.M2MBDS.HelloWorld

Create Activity : c'est l'Activity principale de


l'application, on peut la nommer :
HelloWorldActivity , cette Activity est représentée
par une classe Java HelloWorldActivity.java

- 27 -
Première application Android
Explication de l'arborescence du projet

- 28 -
Première application Android
src : ce dossier contient les sources de votre
application (code JAVA) et les packages
com.M2MBDS.HelloWorld : le package de votre
application. Bien sûr, vous pouvez avoir plusieurs
packages dans votre application
HelloWorldActivity.java : notre principale
activité
gen : ce dossier inclut les fichiers générés
automatiquement par le SDK Android à chaque
précompilation

- 29 -
Première application Android
R.java : généré automatiquement à partir de vos
ressource
BuildConfig.java: permet de gérer l’affichage des
logs
assets : ce dossier contient des données non
internationalisées qui seront utilisées dans votre
application (images, vidéos, licence, etc.). Non
accessible à travers la classe R
res : ce dossier contient les ressources de votre
application (images, vidéos, styles)

- 30 -
Première application Android

drawable-XXX: contient toutes les images,


bitmaps dont vous avez besoin pour votre
application dans différentes résolutions (basse,
moyenne, haute et trés haute)

layout : le SDK Android offre une technique de


création d'interfaces graphiques à l'aide de
fichiers XML. C'est dans ce dossier que vous
inclurez l'ensemble des fichiers décrivant vos
interfaces

- 31 -
Première application Android
activity_main.xml : le fichier principal de votre
interface

values : ce dossier contient un ensemble de fichiers


décrivant les valeurs (pseudovariables) utilisées par
votre application. On peut, par exemple, y mettre des
chaînes de caractères (strings.xml), des tableaux
(arrays.xml), des entiers, des couleurs, etc.

Strings.xml : fichier qui contient vos déclarations de


chaînes de caractères

- 32 -
Première application Android

ic_launcher-web.png : l'icône de votre


application, cette icône sera affichée sur le
bureau

AndroidManifest.xml : ce fichier définit le


comportement de votre application au système
Android. Ce fichier définit par exemple le nom,
l'icône, la version min du SDK, les activités, les
services, etc

- 33 -
Développement Mobile
2017/2018

Mme. Sajeh ZAIRI CHIHI


sajehzairi@gmail.com

Ecole Supérieure d’Economie Numérique

Université de la Manouba

- 34 - - 34 -
De quoi on a besoin ?

Java

SDK Android

IDE Eclipse
+
plugin ADT (Android Developement Tools)
réduit le temps de développement et test

- 35 -
Installation SDK et Eclipse

1. Téléchargement et installation d’Eclipse :


A partir du site officiel eclipse.org, il y a plusieurs
versions, on a besoin d’Eclipse Classic

2. Téléchargement et installation du SDK


Android :
A partir du site android.com, dans la section
Developers

- 36 -
Installation SDK et Eclipse

3. Installation du plugin Eclipse (ADT)


Pour intégrer le SDK Android à Eclipse :
Depuis le menu Help sélectionner l'onglet Instal New
Software,

Ensuite, cliquer sur le bouton Add


• tapez Android Plugin pour le champ Name
et
• https://dl-ssl.google.com/android/eclipse/ dans le
champ Location

cliquez sur OK

- 37 -
Installation SDK et Eclipse

- 38 -
Installation SDK et Eclipse
Eclipse va chercher des informations par rapport à ce plugin, puis
il nous propose Android DDMS et Android Development

- 39 -
Installation SDK et Eclipse
Une fois l’IDE redémarré, rendez-vous dans les préférences Window
> Preferences pour configurer ADT et spécifier l’emplacement du
SDK Android avant de valider avec OK

- 40 -
Installation SDK et Eclipse

1. Permet de créer des AVD (Android Virtuel


Device) qu'on appelle EMULATEUR

2. Permet de créer un projet Android

3. Permet d'ajouter un nouveau fichier de type


XML.
- 41 -
Création et utilisation de l’émulateur
L’émulateur sert à exécuter le code (Java / xml)
que nous avons développé sans avoir besoin de
brancher un téléphone réel

Pour créer un émulateur (AVD) on clique sur


cette icône

- 42 -
Création et utilisation de l’émulateur
Ensuite cliquez sur Available package, cochez
et enfin Install Selected

- 43 -
Création et utilisation de l’émulateur
Cochez Accept All puis cliquez sur Install.

- 44 -
Création et utilisation de l’émulateur
Cliquez sur Virtual Devices >>New . Une boite de dialogue
s'ouvre, pour créer votre Emulateur vous avez 3 choses à
saisir :

- 45 -
Création et utilisation de l’émulateur

- 46 -