1 tours horizon
-
Upload
saber-lajili -
Category
Mobile
-
view
1.579 -
download
4
Embed Size (px)
Transcript of 1 tours horizon

02/05/2023 1
La plateforme AndroidTour d’horizon
Saber LAJILIVersion janvier 2014Email : [email protected] : slideShare saber lajili

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

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

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

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

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

Architecture
7Saber LAJILI

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

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

Versions Android
10Saber LAJILI

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

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

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

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

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

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

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

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

Arborescence de projet
23Saber LAJILI

Manifest.xml
24Saber LAJILI

DEMO : Atelier 1• Application Hello World
25Saber LAJILI