La plateforme Android
Tour d’horizon
Saber LAJILI
Version janvier 2014
Email : lajili6808@gmail.com
Espace : slideShare sa...
Plan
1. Généralités
2. Architecture de Android
3. Outils de développement
4. Application Android
5. Composants d’une appli...
Généralités
Android Un système d’exploitation open source libre pour
appareils mobiles;
Concurrents:
Symbian OS: il est cr...
Généralités
- Android est issu du travail d'une startup (entreprise en
démarrage)
- Racheté par Google en 2005
- Création ...
Généralités
- Android Market est lancé en Novembre 2008
lien :https://market.android.com
- Octobre 2008 : sortie du premie...
Généralités
 Environnement de développement complet :émulateur,
outils de débogage, …
 Framework applicatif
 Propre Mac...
Architecture
7Saber LAJILI
 Architecture à 4 niveaux
 Noyau Linux 2.6 standard+ extensions (besoins
de mobilité comme alarm, binder, power
manageme...
 Machine virtuelle : Dalvik
– Elle est basée sur une architecture de registre à
l'instar de la machine virtuelle Java qui...
Versions Android
10Saber LAJILI
ll coexiste actuellement deux branches de
versions
 Version 3 pour les tablettes
– version 3.2 actuellement
 Version 2 p...
Application Android
 Application native= application fonctionnelle
sur une plateforme spécifique
 Langage de développeme...
Application Android
 Par défaut une application est exécutée
dans un process Linux
 Une application Android n'a accès qu...
Compilation
14Saber LAJILI
Compilation --détails
15Saber LAJILI
Les composants d’une application Android
16Saber LAJILI
Packages des composants
17Saber LAJILI
 activité (activity) : interface graphique pour
l'utilisateur :– classe Activity
 service (service) : composant exécuté ...
Application Hello World
 Outils de développement
 Eclipse avec ADT
– ADT : Android Development Tools
 le SDK et AVD Man...
Emulateur AVD
 Émulateur AVD
 L'émulateur se comporte (presque) comme un
téléphone
 Personnalisation :– langue, date et...
Emulateur AVD
Émulateur AVD
L'émulateur peut être contrôlé comme suit
 Ctrl-F11 et Ctrl-F12 pour le mode portrait /
paysa...
DDMS
 DDMS (Dalvik Debug Monitor Server) permet de:
 Suivre l'utilisation du tas
 Suivre les allocations d'objets et mé...
Arborescence de projet
23Saber LAJILI
Manifest.xml
24Saber LAJILI
DEMO : Atelier 1
• Application Hello World
25Saber LAJILI
Prochain SlideShare
Chargement dans…5
×

1 tours horizon

1 506 vues

Publié le

Android component

Publié dans : Mobile
2 commentaires
4 j’aime
Statistiques
Remarques
Aucun téléchargement
Vues
Nombre de vues
1 506
Sur SlideShare
0
Issues des intégrations
0
Intégrations
10
Actions
Partages
0
Téléchargements
7
Commentaires
2
J’aime
4
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive
  • l'OHA(Open Handset Alliance)
    - Consortium créé par Google réunissant des acteurs du
    marché de la mobilité : constructeurs, opérateurs en téléphonie, éditeurs de logiciels
    La start-up (en français, entreprise en démarrage) est une jeune entreprise à fort potentiel de croissance et qui fait la plupart du temps l'objet de levée de fonds. On parle également de start-uppour des entreprises en construction qui ne se sont pas encore lancées sur le marché commercial (ou seulement à titre expérimental). Elle est en phase plus ou moins longue de développement d'un produit, de test d'une idée, de validation d'une technologie ou d'un modèle économique. Le risque d'échec est supérieur aux entreprises traditionnelles du fait des petites tailles et du manque de visibilité de ces structures.
  • Le système Android évolue très vite
    ● ce qui est une marque de dynamisme
    ● ce qui provoque une fragmentation importante des plateformes
    ● nécessite un développement basé sur une version minimale
    répandue
    ● Pour les développeurs, Google met à disposition un SDK
    (Software Development Kit)
    ● lien : http://developer.android.com/sdk/index.html
    ● En plus du SDK il existe des bibliothèques tiers
    ● leur support n'est pas obligatoire par les intégrateurs
    ● exemples : API Google, Samsung, LG, ...
  • , attention, toutes les classes du JDK ne sont pas disponibles :Swing par exemple
    possibilité d'utiliser du C pour certaines parties critiques: utilisation du NDK (Native Development Kit)
  • Les applications Java développées pour Android doivent être compilées au format dalvik exécutable (.dex) avec l'outil dx. Cet outil compile les .java en .class et ensuite il convertit ces .class en .dex. Un .dex peut contenir plusieurs classes. Les strings dupliqués et autre constantes utilisées dans de multiples classes sont regroupées dans un .dex. Le bytecode utilisé dans les .dex est le Dalvik bytecode et non le java Bytecode.   
  • Java source code is converted into Java Byte Code using Java compiler, Java byte code is again converted to Dalvik byte code using dex compiler.Dex Byte code is converted in to .dex file by Dalvik virtual m/c.Here is the graphical representation of conversion,
  • Il existe 4 types de composant applicatif dont les objectifs et cycles de vie sont différents
  • Il existe 4 types de composant applicatif dont les objectifs et cycles de vie sont différents
  • 1 tours horizon

    1. 1. La plateforme Android Tour d’horizon Saber LAJILI Version janvier 2014 Email : lajili6808@gmail.com Espace : slideShare saber lajili 20/02/2015 1
    2. 2. Plan 1. Généralités 2. Architecture de Android 3. Outils de développement 4. Application Android 5. Composants d’une application Android 6. Réaliser notre première application 2Saber LAJILI
    3. 3. Généralités Android Un système d’exploitation open source libre pour appareils mobiles; Concurrents: Symbian OS: il est crée par différents constructeurs (Psion, Nokia, Motorola); iOS(iphone OS): Un système mobile développé par Apple; Windows mobile: C’est le nom générique donné à différentes versions de Microsoft Windows. 3Saber LAJILI
    4. 4. Généralités - Android est issu du travail d'une startup (entreprise en démarrage) - Racheté par Google en 2005 - Création le 7 Novembre 2007 de l'OHA(Open Handset Alliance) - Annonce officielle de la plateforme Android le même Jour, - Sortie du premier SDK (Software Development Kit) le 12 Novembre 2007 4Saber LAJILI
    5. 5. Généralités - Android Market est lancé en Novembre 2008 lien :https://market.android.com - Octobre 2008 : sortie du premier samrtphone Android aux Etats-Unis - Mars 2009 en France - 2009 : premières tablettes Android - Le vrai succès à partir de début 2011, avec la version Android 3.0 5Saber LAJILI
    6. 6. Généralités  Environnement de développement complet :émulateur, outils de débogage, …  Framework applicatif  Propre Machine virtuelle Dalvik  Navigateur intégré : –WebKit  Graphisme 2D et 3D  Base de données SQLite  CODEC audio et vidéo (MPEG4, MP3, …)  Options matérielles et connectivité: Réseau GSM, caméra, GPS, … 6Saber LAJILI
    7. 7. Architecture 7Saber LAJILI
    8. 8.  Architecture à 4 niveaux  Noyau Linux 2.6 standard+ extensions (besoins de mobilité comme alarm, binder, power management, logger low memory killer  Noyau écrit en C+assembleur  Qques applications natives + Libraries écrites en C++  Les autres applications écrites en Java Architecture 8Saber LAJILI
    9. 9.  Machine virtuelle : Dalvik – Elle est basée sur une architecture de registre à l'instar de la machine virtuelle Java qui a une architecture de pile – Adapté ARM hardware – Elle utilise son propre bytecode et pas le Java bytecode Architecture 9Saber LAJILI
    10. 10. Versions Android 10Saber LAJILI
    11. 11. ll coexiste actuellement deux branches de versions  Version 3 pour les tablettes – version 3.2 actuellement  Version 2 pour les smart phones – version 2.3.4 actuellement  Version 4 : fusion entre téléphones, tablettes et télévisions Versions Android 11Saber LAJILI
    12. 12. Application Android  Application native= application fonctionnelle sur une plateforme spécifique  Langage de développement : Java,  JNI: Java Native Interface  Création d'un fichier .apk qui contient toute l'application et ses ressources qui sera installé sur la plateforme Android  Toutes les applications Android ont les même droits  Une application est exécutée dans sa propre VM (Virtual Machine instance) 12Saber LAJILI
    13. 13. Application Android  Par défaut une application est exécutée dans un process Linux  Une application Android n'a accès qu'à ses propres ressources  Une application doit posséder les permissions adéquats pour accéder aux composants du système (SMS, caméra, …) 13Saber LAJILI
    14. 14. Compilation 14Saber LAJILI
    15. 15. Compilation --détails 15Saber LAJILI
    16. 16. Les composants d’une application Android 16Saber LAJILI
    17. 17. Packages des composants 17Saber LAJILI
    18. 18.  activité (activity) : interface graphique pour l'utilisateur :– classe Activity  service (service) : composant exécuté en tâche de fond, sans interface graphique :– classe Service  fournisseur de données (content provider) : gère et partage des données applicatives : – classe ContentProvider  récepteur broadcast (broadcast receiver) : réagit à des messages, systèmes ou applicatifs: – classe BrodcastReceiver Exp: mise hors tension, baterie faible, … 18Saber LAJILI
    19. 19. Application Hello World  Outils de développement  Eclipse avec ADT – ADT : Android Development Tools  le SDK et AVD Manager – AVD : Android Virtual Device  ADB : Android Debug Bridge  DDMS : Dalvik Debug Monitor Server 19Saber LAJILI
    20. 20. Emulateur AVD  Émulateur AVD  L'émulateur se comporte (presque) comme un téléphone  Personnalisation :– langue, date et heure, ajouter des contacts, supprimer des applications, recevoir des SMS et des appels téléphoniques  Création en mode graphique ou bien en ligne de commande  Ligne de commande Dans le répertoire tools de repértoire SDK  emulator -avd <avd_name> [-<option> [<value>]]… –exemple : emulator -avd Samsung_S 20Saber LAJILI
    21. 21. Emulateur AVD Émulateur AVD L'émulateur peut être contrôlé comme suit  Ctrl-F11 et Ctrl-F12 pour le mode portrait / paysage par exemple – l'ensemble des raccourcis est disponible à http://developer.android.com/tools/help/emulato r.html – par la vue "Emulator Control" dans Eclipse 21Saber LAJILI
    22. 22. DDMS  DDMS (Dalvik Debug Monitor Server) permet de:  Suivre l'utilisation du tas  Suivre les allocations d'objets et mémoire  Travailler sur le système de fichier de l'émulateur  Voir les threads executés sur l'émulateur  Effectuer du profiling de méthode : nombre d'appels, temps d'exécution, …  Vue Emulator Control ● envoi de SMS ● émulation d'appel téléphonique ● envoi de points de géolocalisation 22Saber LAJILI
    23. 23. Arborescence de projet 23Saber LAJILI
    24. 24. Manifest.xml 24Saber LAJILI
    25. 25. DEMO : Atelier 1 • Application Hello World 25Saber LAJILI

    ×