SlideShare une entreprise Scribd logo
Patrick Bashizi
développeur Android
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
GOOGLE ANDROID
 Environs 150K application dans l’Android
Market
 Ouvert à plusieurs langages de
programmation (Python, Java
,PHP, javascript)
 Principal langage : JAVA !!
Pourquoi Android?
 Au cours des deux dernières années,
la recherche mobile mondiale a
augmenté de 5X
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 »
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
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.
Historique
 2005 :
Google Achete Android Inc.
Les travaux sur Dalvik VM débutent
Historique
 2007
 OHA annoncé (Open Hansdet
Alliance)
 Premier SDK
Historique
 2008
 T-Mobile G1 annoncé
 SDK 1.0 released
 Android devient open source
Open Handset Alliance
 Sprint Nextel
 T-Mobile
 HTC
 Motorola
 Samsung
 Sony Ericsson
 Toshiba
 Vodafone
 Google
 Intel
 Texas
Instruments
 Acer
 Etc
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)
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)
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
Android Architecture
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.
. Composants d’une application
Android
Les cinq composantes majeures d’une
application sont :
 Intent
 Activity
 Broadcast Receiver
 Content Provider
 Service
.Composants d’une application
Android
Activity
Une classe par Activity
Généralement le point d'entrée d'une
application
Généralement une interface
graphique, un écran
A un Cycle de vie
Intent
Type d'action possible déclaré auprès
du système
Indique le besoin ou le service offert
Content Provider
Accès aux données partagées
 Données internes ou externes à
l'application
Encapsulation du schéma de la base
Services
Composants sans interface
graphique
Activité de longue durée
Démarrer par context.startService:
interne à l'application
Démarrer par context.bindService:
externe à l'application
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.
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)
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
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.
Intro Android
Quelques outils
indispensables
Droid Draw (WYSIWYG)
Dalvik Debug Monitor Service
(DDMS)
Emulateurs
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
IDE(s)
 ECLIPSE Android Development Tools
(ADT)
 NETBEANS plugin for Android:
(UNDROID)
Q/A

Contenu connexe

Tendances

Nouveautés d'iOS 10 : on vous dit tout !
Nouveautés d'iOS 10 : on vous dit tout !Nouveautés d'iOS 10 : on vous dit tout !
Nouveautés d'iOS 10 : on vous dit tout !
BeApp
 
Android nougat
Android nougatAndroid nougat
Android nougat
BeApp
 
Niji x mobile mots flash
Niji x mobile   mots flashNiji x mobile   mots flash
Niji x mobile mots flash
Gabriel DUPONT
 
Développement d'applications mobiles.. Environnement de programmation visuelle
Développement d'applications mobiles.. Environnement de programmation visuelleDéveloppement d'applications mobiles.. Environnement de programmation visuelle
Développement d'applications mobiles.. Environnement de programmation visuelle
REGIONAL ACADEMY OF EDUCATION AND TRAINING
 
Android Intro-DevFest Yde 2013
Android Intro-DevFest Yde 2013Android Intro-DevFest Yde 2013
Android Intro-DevFest Yde 2013
gdgyaounde
 
Introduction au développement Android
Introduction au développement AndroidIntroduction au développement Android
Introduction au développement Android
Steve Tremblay
 
Le nouveau android
Le nouveau androidLe nouveau android
Le nouveau android
Christian SUMBANG
 
Initiation Android Niveau Débutant
Initiation Android Niveau DébutantInitiation Android Niveau Débutant
Initiation Android Niveau Débutant
Nadim GOUIA
 
SophiaConf 2010 Présentation de la conférence du 05 Juillet - Android :Tout s...
SophiaConf 2010 Présentation de la conférence du 05 Juillet - Android :Tout s...SophiaConf 2010 Présentation de la conférence du 05 Juillet - Android :Tout s...
SophiaConf 2010 Présentation de la conférence du 05 Juillet - Android :Tout s...
TelecomValley
 
Programmation sous Android
Programmation sous AndroidProgrammation sous Android
Programmation sous Android
Olivier Le Goaër
 
Ch1. Développement mobile
Ch1. Développement mobileCh1. Développement mobile
Ch1. Développement mobile
Haifa Chorfi
 
Android
AndroidAndroid
Workshop android
Workshop androidWorkshop android
Workshop android
'Med Douik
 
Niji mobile factory - prevention application mobile android11-i os14- 06-2020
Niji   mobile factory - prevention application mobile android11-i os14- 06-2020Niji   mobile factory - prevention application mobile android11-i os14- 06-2020
Niji mobile factory - prevention application mobile android11-i os14- 06-2020
Gabriel DUPONT
 
Google IO/Android Q - Nouveautés et changements 2019
Google IO/Android Q - Nouveautés et changements 2019Google IO/Android Q - Nouveautés et changements 2019
Google IO/Android Q - Nouveautés et changements 2019
Niji
 
Présentation et Initiative pour le développement Android
Présentation et Initiative pour le développement AndroidPrésentation et Initiative pour le développement Android
Présentation et Initiative pour le développement Android
younes ben tlili
 
Ch2. Développement mobile
Ch2. Développement mobileCh2. Développement mobile
Ch2. Développement mobile
Haifa Chorfi
 

Tendances (17)

Nouveautés d'iOS 10 : on vous dit tout !
Nouveautés d'iOS 10 : on vous dit tout !Nouveautés d'iOS 10 : on vous dit tout !
Nouveautés d'iOS 10 : on vous dit tout !
 
Android nougat
Android nougatAndroid nougat
Android nougat
 
Niji x mobile mots flash
Niji x mobile   mots flashNiji x mobile   mots flash
Niji x mobile mots flash
 
Développement d'applications mobiles.. Environnement de programmation visuelle
Développement d'applications mobiles.. Environnement de programmation visuelleDéveloppement d'applications mobiles.. Environnement de programmation visuelle
Développement d'applications mobiles.. Environnement de programmation visuelle
 
Android Intro-DevFest Yde 2013
Android Intro-DevFest Yde 2013Android Intro-DevFest Yde 2013
Android Intro-DevFest Yde 2013
 
Introduction au développement Android
Introduction au développement AndroidIntroduction au développement Android
Introduction au développement Android
 
Le nouveau android
Le nouveau androidLe nouveau android
Le nouveau android
 
Initiation Android Niveau Débutant
Initiation Android Niveau DébutantInitiation Android Niveau Débutant
Initiation Android Niveau Débutant
 
SophiaConf 2010 Présentation de la conférence du 05 Juillet - Android :Tout s...
SophiaConf 2010 Présentation de la conférence du 05 Juillet - Android :Tout s...SophiaConf 2010 Présentation de la conférence du 05 Juillet - Android :Tout s...
SophiaConf 2010 Présentation de la conférence du 05 Juillet - Android :Tout s...
 
Programmation sous Android
Programmation sous AndroidProgrammation sous Android
Programmation sous Android
 
Ch1. Développement mobile
Ch1. Développement mobileCh1. Développement mobile
Ch1. Développement mobile
 
Android
AndroidAndroid
Android
 
Workshop android
Workshop androidWorkshop android
Workshop android
 
Niji mobile factory - prevention application mobile android11-i os14- 06-2020
Niji   mobile factory - prevention application mobile android11-i os14- 06-2020Niji   mobile factory - prevention application mobile android11-i os14- 06-2020
Niji mobile factory - prevention application mobile android11-i os14- 06-2020
 
Google IO/Android Q - Nouveautés et changements 2019
Google IO/Android Q - Nouveautés et changements 2019Google IO/Android Q - Nouveautés et changements 2019
Google IO/Android Q - Nouveautés et changements 2019
 
Présentation et Initiative pour le développement Android
Présentation et Initiative pour le développement AndroidPrésentation et Initiative pour le développement Android
Présentation et Initiative pour le développement Android
 
Ch2. Développement mobile
Ch2. Développement mobileCh2. Développement mobile
Ch2. Développement mobile
 

En vedette

Joel Heslaut Alerion e-reputation Aspects Juridiques
Joel Heslaut Alerion e-reputation Aspects JuridiquesJoel Heslaut Alerion e-reputation Aspects Juridiques
Joel Heslaut Alerion e-reputation Aspects Juridiques
jheslaut
 
What are flegt vp as fr
What are flegt vp as frWhat are flegt vp as fr
What are flegt vp as fr
LoggingOff
 
What are flegt vp as fr
What are flegt vp as frWhat are flegt vp as fr
What are flegt vp as fr
LoggingOff
 
Vpa update v5 final_fr
Vpa update v5 final_frVpa update v5 final_fr
Vpa update v5 final_fr
LoggingOff
 
What are FLEGT VPAs
What are FLEGT VPAsWhat are FLEGT VPAs
What are FLEGT VPAs
LoggingOff
 
2004 2010 Six ans au service des entreprises vosgiennes
2004 2010 Six ans au service des entreprises vosgiennes2004 2010 Six ans au service des entreprises vosgiennes
2004 2010 Six ans au service des entreprises vosgiennes
Agence Vega
 
2010.07.01 what is eu flegt loggingoff1 fr
2010.07.01 what is eu flegt loggingoff1 fr2010.07.01 what is eu flegt loggingoff1 fr
2010.07.01 what is eu flegt loggingoff1 fr
LoggingOff
 
Bilan de mandatue cci des Vosges
Bilan de mandatue cci des VosgesBilan de mandatue cci des Vosges
Bilan de mandatue cci des Vosges
Agence Vega
 
Android Bonnees pratiques
Android Bonnees pratiques Android Bonnees pratiques
Android Bonnees pratiques
Patrick Bashizi
 

En vedette (9)

Joel Heslaut Alerion e-reputation Aspects Juridiques
Joel Heslaut Alerion e-reputation Aspects JuridiquesJoel Heslaut Alerion e-reputation Aspects Juridiques
Joel Heslaut Alerion e-reputation Aspects Juridiques
 
What are flegt vp as fr
What are flegt vp as frWhat are flegt vp as fr
What are flegt vp as fr
 
What are flegt vp as fr
What are flegt vp as frWhat are flegt vp as fr
What are flegt vp as fr
 
Vpa update v5 final_fr
Vpa update v5 final_frVpa update v5 final_fr
Vpa update v5 final_fr
 
What are FLEGT VPAs
What are FLEGT VPAsWhat are FLEGT VPAs
What are FLEGT VPAs
 
2004 2010 Six ans au service des entreprises vosgiennes
2004 2010 Six ans au service des entreprises vosgiennes2004 2010 Six ans au service des entreprises vosgiennes
2004 2010 Six ans au service des entreprises vosgiennes
 
2010.07.01 what is eu flegt loggingoff1 fr
2010.07.01 what is eu flegt loggingoff1 fr2010.07.01 what is eu flegt loggingoff1 fr
2010.07.01 what is eu flegt loggingoff1 fr
 
Bilan de mandatue cci des Vosges
Bilan de mandatue cci des VosgesBilan de mandatue cci des Vosges
Bilan de mandatue cci des Vosges
 
Android Bonnees pratiques
Android Bonnees pratiques Android Bonnees pratiques
Android Bonnees pratiques
 

Similaire à Intro Android

Chapitre1+2_35793cfca4b5d005659df01473b886fb.pdf
Chapitre1+2_35793cfca4b5d005659df01473b886fb.pdfChapitre1+2_35793cfca4b5d005659df01473b886fb.pdf
Chapitre1+2_35793cfca4b5d005659df01473b886fb.pdf
yahialinus
 
01 programmation mobile - android - (introduction)
01 programmation mobile - android - (introduction)01 programmation mobile - android - (introduction)
01 programmation mobile - android - (introduction)
TECOS
 
android.pdf
android.pdfandroid.pdf
android.pdf
med_univ78
 
Chapitre 1 android
Chapitre 1 androidChapitre 1 android
chapitre-1-introduction-plateforme-android (2).pdf
chapitre-1-introduction-plateforme-android (2).pdfchapitre-1-introduction-plateforme-android (2).pdf
chapitre-1-introduction-plateforme-android (2).pdf
olfaharrabi2
 
1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - Alloy
1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - Alloy1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - Alloy
1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - Alloy
Meetup Mobile Montpellier
 
Gtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogyGtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogy
Sacha Leprêtre
 
Windows Phone 8 for Business - Developer Talks
Windows Phone 8 for Business - Developer TalksWindows Phone 8 for Business - Developer Talks
Windows Phone 8 for Business - Developer Talks
Jean-Sébastien Dupuy
 
Conférence Titanium + Alloy au JUG Montpellier
Conférence Titanium + Alloy au JUG MontpellierConférence Titanium + Alloy au JUG Montpellier
Conférence Titanium + Alloy au JUG Montpellier
Damien Laureaux
 
introAndroid_2023_V6.5.2pp1-162.pdf
introAndroid_2023_V6.5.2pp1-162.pdfintroAndroid_2023_V6.5.2pp1-162.pdf
introAndroid_2023_V6.5.2pp1-162.pdf
RihabBENLAMINE
 
cours.pdf
cours.pdfcours.pdf
cours.pdf
merazgaammar2
 
Choisir sa plateforme de développement mobile
Choisir sa plateforme de développement mobileChoisir sa plateforme de développement mobile
Choisir sa plateforme de développement mobile
SQLI DIGITAL EXPERIENCE
 
Passage aux applications mobiles
Passage aux applications mobilesPassage aux applications mobiles
Passage aux applications mobiles
neuros
 
Introduction_Android_-_Complet.pdf
Introduction_Android_-_Complet.pdfIntroduction_Android_-_Complet.pdf
Introduction_Android_-_Complet.pdf
med_univ78
 
Android workshop - Bootcamp du Mauriapp Challenge 2016
Android workshop - Bootcamp du Mauriapp Challenge 2016Android workshop - Bootcamp du Mauriapp Challenge 2016
Android workshop - Bootcamp du Mauriapp Challenge 2016
Hadina RIMTIC
 
L'univers Android
L'univers AndroidL'univers Android
L'univers Android
Chiheb Ouaghlani
 
userADgents WWDC iOS 8 juin 2014
userADgents WWDC iOS 8 juin 2014userADgents WWDC iOS 8 juin 2014
userADgents WWDC iOS 8 juin 2014
USERADGENTS
 
Jug Lausanne Android Janvier2013
Jug Lausanne Android Janvier2013Jug Lausanne Android Janvier2013
Jug Lausanne Android Janvier2013
jeromevdl
 
Présentation développement application Android
Présentation développement application AndroidPrésentation développement application Android
Présentation développement application Android
ambin_fr
 

Similaire à Intro Android (20)

Chapitre1+2_35793cfca4b5d005659df01473b886fb.pdf
Chapitre1+2_35793cfca4b5d005659df01473b886fb.pdfChapitre1+2_35793cfca4b5d005659df01473b886fb.pdf
Chapitre1+2_35793cfca4b5d005659df01473b886fb.pdf
 
01 programmation mobile - android - (introduction)
01 programmation mobile - android - (introduction)01 programmation mobile - android - (introduction)
01 programmation mobile - android - (introduction)
 
android.pdf
android.pdfandroid.pdf
android.pdf
 
Chapitre 1 android
Chapitre 1 androidChapitre 1 android
Chapitre 1 android
 
chapitre-1-introduction-plateforme-android (2).pdf
chapitre-1-introduction-plateforme-android (2).pdfchapitre-1-introduction-plateforme-android (2).pdf
chapitre-1-introduction-plateforme-android (2).pdf
 
Chapitre 4 sem
Chapitre 4 semChapitre 4 sem
Chapitre 4 sem
 
1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - Alloy
1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - Alloy1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - Alloy
1er Meetup Mobile Montpellier - Présentation Appcelerator Titanium - Alloy
 
Gtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogyGtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogy
 
Windows Phone 8 for Business - Developer Talks
Windows Phone 8 for Business - Developer TalksWindows Phone 8 for Business - Developer Talks
Windows Phone 8 for Business - Developer Talks
 
Conférence Titanium + Alloy au JUG Montpellier
Conférence Titanium + Alloy au JUG MontpellierConférence Titanium + Alloy au JUG Montpellier
Conférence Titanium + Alloy au JUG Montpellier
 
introAndroid_2023_V6.5.2pp1-162.pdf
introAndroid_2023_V6.5.2pp1-162.pdfintroAndroid_2023_V6.5.2pp1-162.pdf
introAndroid_2023_V6.5.2pp1-162.pdf
 
cours.pdf
cours.pdfcours.pdf
cours.pdf
 
Choisir sa plateforme de développement mobile
Choisir sa plateforme de développement mobileChoisir sa plateforme de développement mobile
Choisir sa plateforme de développement mobile
 
Passage aux applications mobiles
Passage aux applications mobilesPassage aux applications mobiles
Passage aux applications mobiles
 
Introduction_Android_-_Complet.pdf
Introduction_Android_-_Complet.pdfIntroduction_Android_-_Complet.pdf
Introduction_Android_-_Complet.pdf
 
Android workshop - Bootcamp du Mauriapp Challenge 2016
Android workshop - Bootcamp du Mauriapp Challenge 2016Android workshop - Bootcamp du Mauriapp Challenge 2016
Android workshop - Bootcamp du Mauriapp Challenge 2016
 
L'univers Android
L'univers AndroidL'univers Android
L'univers Android
 
userADgents WWDC iOS 8 juin 2014
userADgents WWDC iOS 8 juin 2014userADgents WWDC iOS 8 juin 2014
userADgents WWDC iOS 8 juin 2014
 
Jug Lausanne Android Janvier2013
Jug Lausanne Android Janvier2013Jug Lausanne Android Janvier2013
Jug Lausanne Android Janvier2013
 
Présentation développement application Android
Présentation développement application AndroidPrésentation développement application Android
Présentation développement application Android
 

Intro Android

  • 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.
  • 8. Historique  2005 : Google Achete Android Inc. Les travaux sur Dalvik VM débutent
  • 9. Historique  2007  OHA annoncé (Open Hansdet Alliance)  Premier SDK
  • 10. Historique  2008  T-Mobile G1 annoncé  SDK 1.0 released  Android devient open source
  • 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
  • 18. .Composants d’une application Android Activity Une classe par Activity Généralement le point d'entrée d'une application Généralement une interface graphique, un écran A un Cycle de vie
  • 19. Intent Type d'action possible déclaré auprès du système Indique le besoin ou le service offert
  • 20. Content Provider Accès aux données partagées  Données internes ou externes à l'application Encapsulation du schéma de la base
  • 21. Services Composants sans interface graphique Activité de longue durée Démarrer par context.startService: interne à l'application Démarrer par context.bindService: externe à l'application
  • 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.
  • 29. Dalvik Debug Monitor Service (DDMS)
  • 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
  • 32. IDE(s)  ECLIPSE Android Development Tools (ADT)  NETBEANS plugin for Android: (UNDROID)
  • 33. Q/A