4. 4
L’Open Handset Alliance
Fabricants
de Téléphones
Opérateurs de Téléphonie
HTC
Sociétés Internet
22/10/2008
Constructeurs de puces électroniques
Acteurs GPS
Y. BEN TLILI
9. 9
Caractéristiques
Point de vue constructeur
• Système Linux + Java
Point de vue développeur
• Application développées
en Java
• SDK complet et gratuit
Point de vue utilisateur
• Système fonctionnel
• intuitif, évolutif
Point de vue chercheur
• Projet Open Source
• C++ /Java
Y. BEN TLILI
13. 13
•Architecture ARM (famille RISC)
•Basé sur Linux 2.6.24
•Système de fichiers supporté : FAT32
•Support de TCP/IP, UDP
Y. BEN TLILI
14. 14
•Surface Manager(écran)
•SQL Lite, OpenGL(Graphique 2D/3D)
•Audio Manager(sonneries, écouteurs)
Machine Virtuelle Dalvik
Y. BEN TLILI
DVM (JVM pour PC)
15. 15
•Frameworks (pour développeurs)
Linux
sous le capot
•Activity Manager (Intents, Actions)
•Location Manager (GPS, Coordonnées Map)
•Notification Manager(Barre de notification, Vibreur,
Son, LED)
Y. BEN TLILI
17. 17
1. Activity
Classe + Interface Graphique(un écran)
Répond à des évènements(click, touche,…)
Cycle de Vie (Création--->Destruction)
1 Activité au moins par Application
Y. BEN TLILI
19. 19
3. Content Provider
Partage de données entre application
Liste de Contacts
SQLite
GPS
Module GSM, UMTS
Y. BEN TLILI
20. 20
4. Broadcast Receiver
Réagir à des évènements extérieur à l’App.
Réveiller une Application
Réagir à des évènements Système
Y. BEN TLILI
21. 5. Fragment
comportement ou une partie de l'interface utilisateur
dans une activité.
Possibilité de combiner de multiples fragments en une
seule activité
Un fragment doit toujours être intégré dans une activité
et le cycle de vie du fragment est directement affectée
par le cycle de vie de l'activité du hôte .
Y. BEN TLILI
22. 6. Intent
une description abstraite d'une opération à effectuer.
Il peut être utilisé avec startActivity pour lancer une
activité, broadcastIntent pour l'envoyer à tous les
composants de BroadcastReceiver intéressées, et
StartService (intention) ou bindService (intention,
ServiceConnection, int) pour communiquer avec un
service d'arrière-plan.
Messages système qui circulent entre les activités.
Y. BEN TLILI
23. Partie 3 – Le Modèle de
Programmation
SDK, Eclipse, DDMS, Projet
Y. BEN TLILI
Définir Android n’est pas une chose aisée tant les concepts derrière cet intitulé unique sont nombreux.Pour commencer et en simplifiant à l’extrême, on peut dire qu’Android est un …Tout au long de ce Cours, nous découvrirons les nombreuses facettes de ce système et nous élargirons ainsi la définition d’Android.
Dès son origine,la démarche de Google a été d’ouvrir le dev. d’Android en rassemblant à travers l’Open Handset Alliance (OHA) un maximum de sociétés.Les membres de ce consortium sont très variés : Sony Ericsson, Samsung ou Motorola, Sprint, T-Mobile ou NTT DoCoMo, Google évidemment mais aussi eBay, Constructeurs de puces électroniques Intel, nVidia, marché du GPS Garmin.Toutes ces entités se retrouvent donc au sein de cette alliance, pour participer au développement d’Android.
Sur le marché on trouveessentiellement 2 types de device équipéd’Android: LesSmartphones,Les TabletsTablets C'est une innovation qui ressemble à un grand smartphone, mais a des capacités supplémentaires pour ressembler davantage comme un ordinateur portable.
C’est le Framework Java spécialisé dans les applications mobiles. Des plates-formes compatibles avec J2ME sont embarquées dans de nombreux téléphones portables et PDA.
C’est le Framework Java spécialisé dans les applications mobiles. Des plates-formes compatibles avec J2ME sont embarquées dans de nombreux téléphones portables et PDA.
Type Intents: Explicite et Implicite, Role: Lancement de nouvelles activitésNotifications: des applications s’exécutent en même temps en background, notification des évènements
Fournisseur de contenu
Classe + Interface Graphique GéNéRALEMENTPoint d’entrée pour l’application
Le service est destiné à fonctionner indépendamment de l'écran, donc des activités.Le meilleur exemple est le joueur de musique qui peut fonctionner pendant qu'on passe d'un écran à un autre.
On utilise un Content Provider pour partager des données entre applications. L'interface ContentResolver est l'interface qui fournit les données aux autres objets.