1 tours horizon

25
La plateforme Android Tour d’horizon Saber LAJILI Version janvier 2014 Email : [email protected] Espace : slideShare saber lajili 19/06/2022 1

Transcript of 1 tours horizon

Page 1: 1 tours horizon

02/05/2023 1

La plateforme AndroidTour d’horizon

Saber LAJILIVersion janvier 2014Email : [email protected] : slideShare saber lajili

Page 2: 1 tours horizon

Plan1. Généralités2. Architecture de Android3. Outils de développement4. Application Android5. Composants d’une application

Android6. Réaliser notre première application

2Saber LAJILI

Page 3: 1 tours horizon

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

Page 4: 1 tours horizon

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

Page 5: 1 tours horizon

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

Page 6: 1 tours horizon

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

Page 7: 1 tours horizon

Architecture

7Saber LAJILI

Page 8: 1 tours horizon

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

Page 9: 1 tours horizon

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

Page 10: 1 tours horizon

Versions Android

10Saber LAJILI

Page 11: 1 tours horizon

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

Page 12: 1 tours horizon

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

Page 13: 1 tours horizon

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

Page 14: 1 tours horizon

Compilation

14Saber LAJILI

Page 15: 1 tours horizon

Compilation --détails

15Saber LAJILI

Page 16: 1 tours horizon

Les composants d’une application Android

16Saber LAJILI

Page 17: 1 tours horizon

Packages des composants

17Saber LAJILI

Page 18: 1 tours horizon

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

Page 19: 1 tours horizon

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

Page 20: 1 tours horizon

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 commandeDans le répertoire tools de repértoire SDK emulator -avd <avd_name> [-<option>

[<value>]]…–exemple : emulator -avd Samsung_S

20Saber LAJILI

Page 21: 1 tours horizon

Emulateur AVDÉmulateur AVDL'é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/emulator.html

– par la vue "Emulator Control" dans Eclipse

21Saber LAJILI

Page 22: 1 tours horizon

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

Page 23: 1 tours horizon

Arborescence de projet

23Saber LAJILI

Page 24: 1 tours horizon

Manifest.xml

24Saber LAJILI

Page 25: 1 tours horizon

DEMO : Atelier 1• Application Hello World

25Saber LAJILI