2. ANDROID, Kesako?
OS de Google pour les terminaux
mobiles
Une startup de même nom rachetée par
Google en 2005
Leader mondial des plateformes mobiles
(janvier 2011)
Entre 300K and 400K terminaux sont
actifs dans le monde
3. GOOGLE ANDROID
Environs 150K application dans l’Android
Market
Ouvert à plusieurs langages de
programmation (Python, Java
,PHP, javascript)
Principal langage : JAVA !!
4. Pourquoi Android?
Au cours des deux dernières années,
la recherche mobile mondiale a
augmenté de 5X
5. Pourquoi Android?
« Nous avons créé Android en réponse à
nos propres expériences de lancement
d'applications mobiles.
Nous voulions nous assurer qu'il n'y
avait pas de point central de défaillance,
de sorte qu’aucun joueur de l'industrie
puisse limiter ou contrôler les
innovations de toute autre.
C'est pourquoi nous avons créé Android,
et avons rendu son code source ouvert »
6. Modèle économique
Le budget d’Android n’est pas basé
sur les ventes.
Il est basé sur la visibilité, et sur
l’attractivité par rapport au nombre
d’utilisateurs attirés sur la plateforme
7. Modèle économique
En se lançant dans la création d'une
plate-forme mobile ouverte, Google a
fait un pari audacieux:
Celui de s'en servir comme support
pour ses activités publicitaires dans un
nouveau contexte, celui de l' Internet
mobile.
11. Open Handset Alliance
Sprint Nextel
T-Mobile
HTC
Motorola
Samsung
Sony Ericsson
Toshiba
Vodafone
Google
Intel
Texas
Instruments
Acer
Etc
12. Versions d’Android
1.5 : Cupcake (Petit Gâteau - sortie en avril 2009, dernière
révision officielle en mai 2010)
1.6 : Donut (Beignet - sortie en septembre 2009, dernière
révision officielle en mai 2010)
2.1 : Eclair (sortie en janvier 2010, dernière révision officielle
en Mai 2010)
2.2 : FroYo (Frozen Yogourt / Yaourt glacé - sortie en mai
2010, dernière révision officielle en juillet 2010)
2.3 : Gingerbread (Pain d'épice - Version actuelle sortie le 6
décembre 2010)
3.0 : Honeycomb (Alvéoles à miel, début 2011)
13. Android Features
Application framework enabling reuse and replacement of
components
Dalvik virtual machine optimized for mobile devices
Integrated browser based on the open source WebKit
engine
Optimized graphics powered by a custom 2D graphics
library; 3D graphics based on the OpenGL ES 1.0
specification (hardware acceleration optional)
SQLite for structured data storage
Media support for common audio, video, and still image
formats (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)
14. Android™ Features
GSM Telephony (hardware dependent)
Bluetooth, EDGE, 3G, and WiFi (hardware dependent)
Camera, GPS, compass, and accelerometer
(hardware dependent)
Rich development environment including a device
emulator, tools for debugging, memory and
performance profiling, and plugins for IDE ’S
16. Le Runtime
Dalvik™ VM :Machine virtuelle d’
Android
Chaque application Android execute son
propre processus, avec son instance de
la machine virtuelle Dalvik.
Dalvik a été écrit de sorte que un
terminal puisse executer des multiples
VM efficacement.
17. . Composants d’une application
Android
Les cinq composantes majeures d’une
application sont :
Intent
Activity
Broadcast Receiver
Content Provider
Service
22. Broadcast Receiver
Réagit à des évènements externes
- Logiciel: Alarme, notifications...
- Ex: batterie faible
- Matériel: Activation puce GPS, carte
SD
Réveiller une application, afficher un
message, lancer une activity.
23. Composants d’une application
Android
L'ensemble de ces composantes est
décrit dans le fichier
AndroidManifest.xml.
Les applications ont pour extension
APK (Android Package)
24. Etapes de développement
d’une application Android
Ecriture du code source :
on utilise en général un éditeur de code ou
un IDE. Il y a deux pôles : le code source
java et les interfaces XML.
Pour ce qui est des interfaces, elles peuvent
être générées par un outil de design
graphique du type WYSIWYG.
Ex: Droid Draw
25. Etapes de développement
d’une application Android
Compilation :
Elle génère du byte code .class ou .jar ou les
deux.
Optimisation du byte code : elle conduit à la
génération du fichier .dex de byte code grâce
a la machine virtuelle Dalvik.
Construction du package grâce à l’outil
apkbuilder qui en sortie nous donne un fichier
.apk à installer dans le terminal ou
l’émulateur.
31. Android Virtual Devices (AVD)
Configurations pour émulateurs permettant
de modéliser efficacement un terminal donné.
Dispose de:
- Hardware profile
- Mapping to a system image (Plateforme)
- Autres options (EX: Sdcard)
- Un espace de stockage dédié sur la
machine de développement