Cours android
1
Inspiré du cours de Olivier Le Goaer
2
OS mobile : outils de développement
D’après le cours de Olivier Le Goaer
3
Plateforme de développement
MobileApp vs. WebApp
4
Android
Startup rachetée par Google en 2005 Open Alliance Handset (OHA)
Regroupement de + de 50 entreprises : fabricants de matériel, opérateurs mobiles, développeurs d’applications, … dont Google. Objectif : développer des normes ouvertes pour des applications de téléphonie mobile
Matériel supportant Android
Tablette, smartphone, netbook, télévision, embarqué (frigo?)
5
Android
Points forts
Système linux + java Projet open source Système fonctionnel, intuitif et évolutif SFK complet fourni
Versions d’Android cupcake donut eclair froyo gingerbread honeycomb Icecream sandwich
6
Architecture Android
7
Architecture Android
Linux Kernel
Le noyau linux fournit le pilotes matériels, la gestion de processus, la mémoire, le réseau et la gestion de l’alimentation J2SE (subset) : java.io.*, java.lang.*, ... Android : android.view.*, android.telephony.*, ... Google : com.google.android.maps.* Offre les bases du framework applicatif Utilise la machine virtuelle java Dalvik Fournit les classes utiles et des abstractions matérielles IHM (interface graphiques) décrites en XML Modèle de données et controleurs applicatifs écrits en java
Les bibliothèques
Le moteur d’exécution Android
Le framework applicatif
La couche applicative
8
Machine virtuelle « Dalvik »
Offre l'avantage de toute machine virtuelle
Couche d'abstraction entre le développeur d'applications et des implémentations matérielles particulières
La VM Dalvik n'est pas une VM (Virtual Machine) Java
Tient compte des contraintes de CPU et mémoire Exécute des fichiers .dex (Dalvik Executable) optimisés
La VM créé une instance