Chapitre 2 Architecture et fonctionnalités de base de la ...
Transcript of Chapitre 2 Architecture et fonctionnalités de base de la ...
![Page 1: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/1.jpg)
Chapitre 2Architecture et fonctionnalités de base de la plate-
forme Android3ieme Année Licence Informatique S.I.
Dr. KOUAH SOFIA
2019 - 2020
![Page 2: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/2.jpg)
Objectif du cours
• Introduire le système Android
• Comprendre l’architecture du système Android
![Page 3: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/3.jpg)
Sommaire
1. Introduction 2. Historique 3. Interface4. Applications de base5. Architecture Android
![Page 4: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/4.jpg)
INTRODUCTION
![Page 5: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/5.jpg)
Android
• Android est un système d’exploitation OPEN SOURCE pour
terminaux mobiles (smartphones, PDA, tablet, …)
• Conçu à la base par une startup (Android) rachetée par Google
en 2005
• Juin 2007 – création de OHA (Open Handset Alliance)
• C’est aujourd’hui le système d’exploitation mobile le plus utilisé
à travers le monde
![Page 6: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/6.jpg)
Android
• Android est basé sur Linux. Au plus bas niveau de ce système se
trouve un noyau Linux destiné à la gestion du matériel comme :
• Drivers de ces terminaux,
• La gestion de la mémoire,
• La gestion des processus
• L’accès au réseau
• …
![Page 7: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/7.jpg)
Android désigne à la fois:
•Un environnement de développement (API)
•Un environnement d’exécution (le plus souvent)
![Page 8: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/8.jpg)
Fonctionnalités d’Android (1)Cette plateforme propose entre autres les fonctionnalités
suivantes:
• Un Framework permettant le développement rapide
d'applications,
• Une machine virtuelle optimisée pour les appareils mobiles,
• Un navigateur intégré basé sur le moteur open source Web
Kit,
• Un moteur graphique optimisé,
![Page 9: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/9.jpg)
Fonctionnalités d’Android (2)suite
• Le SGBD SQLite pour le stockage de données,
• Un support média pour les principaux formats audio, vidéo et
images,
• La téléphonie GSM, les communications Bluetooth, 3G, et Wifi,
• Un accès à la caméra, au GPS, à la boussole et aux accéléromètres,
• Un environnement de développement :émulateur, outils de
débogage,…
![Page 10: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/10.jpg)
Android s'appuie sur deux piliers:
• Le langage Java (ou Kotlin)
• Le SDK qui permet d'avoir un environnement de développement facilitant la tâche du développeur
Le kit de développement (SDK) d'Android est un ensemble complet d'outils de développement.
Il inclut un débogueur, des bibliothèques logicielles (l'API de programmation ), un émulateur pour tester les applications, de la documentation, des exemples de code et des tutoriels.
![Page 11: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/11.jpg)
Et pour conclure: Pourquoi Android?
❑ Android utilise le noyau Linux et il est un système libre. Contrairement
à Windows ou Mac OSX, vous pouvez à tout moment consulter le code
source, le télécharger, l’adapter…
❑ Il est associé à un large ensemble de bibliothèques open-source elles aussi,
mais qui ont fait leur preuve, à savoir OpenGL pour la gestion des images 2D
et les environnements 3D, WebKit qui est employé pour le navigateur
internet fourni avec Android (et qui a servi à développer Google Chrome),
mais aussi SQL Lite pour la gestion des bases de données.
![Page 12: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/12.jpg)
Historique
![Page 13: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/13.jpg)
• Android (robot construit à l'image d'un être humain) doit son nom à
une startup du même nom (spécialisée dans le développement
d'applications mobiles),
• rachetée par Google en août 2005.
• Les versions d'Android ont toutes des noms de dessert (anglais) et
suivent un ordre alphabétique.
![Page 14: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/14.jpg)
Versions d’Android
![Page 15: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/15.jpg)
Versions d’Android
![Page 16: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/16.jpg)
Version Actuelle: Android 10
• Version sortie le 3 septembre 2019.
• Les fonctionnalités d'Android 10 sont :
le boost de la RAM (exclusivement sur les smartphones de la marque chinoise OnePlus),
un nouveau support des sous-titres pour les sourds et mal-entendants,
de nouvelles options de personnalisation et de bien-être numérique,
un système de permissions et de confidentialité amélioré,
les bulles de notification, l'intégration d'un outil d'enregistrement de l'écran.
![Page 17: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/17.jpg)
Version Actuelle: Android 10
•de nouveaux gestes de navigation,
• un accès direct à la gestion de son compte Google via les Paramètres,
•un menu de partage revu, les paramètres système flottants dans les applications, un format de profondeur dynamique pour les photos, un nouveau mode bureau inspiré du Samsung DeX,
• le temps restant de la batterie dans les réglages rapides et la possibilité de connexion par QR code à un réseau Wi-Fi.
•….
![Page 18: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/18.jpg)
Interface
![Page 19: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/19.jpg)
• Les appareils équipés d'Android affichent un écran d'accueil qui
sert de point de départ à partir duquel l'utilisateur peut accéder
aux applications. Le contenu de cet écran peut être librement
personnalisé par l'utilisateur (et donc aussi par les fabricants) ;
• il se comporte comme une pile de feuilles qui peuvent être
glissées l'une sur l'autre avec le doigt.
• En haut de l'écran d'accueil se trouvent différentes icônes
d'avertissement et d'état, les notifications, qui permettent par
exemple de contrôler le niveau de la batterie et la disponibilité
des réseaux.
![Page 20: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/20.jpg)
• Depuis l'écran d'accueil, une icône permet à l'utilisateur d'accéder
à la liste de toutes les applications installées dans l'appareil, que
l'utilisateur pourra éventuellement ajouter à l'écran d'accueil.
Lorsqu'une application est exécutée, l'écran de l'application sera
affiché et un bouton permet à l'utilisateur de revenir à l’accueil.
![Page 21: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/21.jpg)
• Les gestes reconnus par l'écran tactile des appareils Android sont
:toucher l'écran, enfoncer (toucher et maintenir le doigt en contact
avec l'écran), déplacer (enfoncer, puis déplacer le doigt en restant
en contact avec l'écran), glisser (déplacer le doigt en contact avec
l'écran sans s'arrêter), double frappe (toucher deux fois de suite un
dessin à l'écran dans un délai très court), pincer (mettre deux
doigts en contact avec l'écran, puis les rapprocher) et tourner
l'écran (changer la position du téléphone, le poser sur le dessus ou
sur le côté).
• Lorsque l'utilisateur doit entrer un texte, Android affiche en bas de
l'écran un clavier virtuel.
![Page 22: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/22.jpg)
Applications
![Page 23: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/23.jpg)
• Android comporte plus de une quinzaine d'applications incorporées
parmi lesquelles il y a l'application téléphone, l'application carnet
d'adresses, des applications Mails : Gmail et Mail, un agenda, une
application de messagerie instantanée utilisant le service Google Talk,
l'application Messaging pour envoyer des messages SMS ou MMS.
• Android comporte également un navigateur web, une application pour
consulter des cartes géographiques, une application pour prendre des
photos et des vidéos, ainsi que consulter les photos et vidéos
enregistrées dans l'appareil, une application pour accéder au service
d'hébergement de vidéos YouTube, des applications pour écouter de la
musique, accéder aux nouvelles ou à la météo, ainsi qu'une horloge et
une calculatrice.
![Page 24: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/24.jpg)
• Android comporte une application incorporée pour accéder au
magasin en ligneGoogle Play, acheter, télécharger et installer des
applications pour Android, ainsi qu'une application Settings
permettant à l'utilisateur d'effectuer différentes opérations de
maintenance et de configuration de l'appareil : activer ou non
l'exploitation des réseaux Wifi et Bluetooth, changer le volume et
la mélodie de la sonnerie, désinstaller des applications, formater
les cartes mémoire, modifier la disposition du clavier virtuel,
régler l'heure, ou obtenir des informations techniques telles que la
version d'Android et le numéro de série de l'appareil.
![Page 25: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/25.jpg)
Architecture Android
![Page 26: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/26.jpg)
C’est un modèle en couches, du noyau aux applications :
![Page 27: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/27.jpg)
![Page 28: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/28.jpg)
1. La couche "Applications" (navigateur, gestion des contacts, application de téléphonie...)
2. La couche "Application Framework" : cette couche permet au programmeur de construire de nouvelles applications; la gestion :
• Views (IHM)
• ContentProviders (fournisseurs de contenus) qui permettent l'accessibillité aux données des autres applications (ex : les contacts) et donc les partages de données
• des ressources qui sont les fichiers non codés comme les images, les écrans (Resource Manager)
• des notifications (affichage d'alerte dans la barre de titre)
• des Activités pour l'enchaînement des écrans
![Page 29: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/29.jpg)
3. La couche "Libraries" (bibliothèques) qui représente la couche logicielle basse pour utiliser :
• les formats multimédia : images, audio et vidéo enregistrement comme rendu
• les dessins 2D et 3D, bitmap et vectoriel,
• une base de données SQL (SQLite)
• SSL
4. L'environnement d'exécution Android Runtime
• Toute application est exécutée dans son propre processus, dans sa propre Dalvik Virtual Machine (avant lollilop), donc plusieurs instances de la DVM peuvent être lancées efficacement.
• Le noyau Linux sur lequel la Dalvik virtual machine s'appuie pour gérer le multithreading, la mémoire. Le noyau Linux apporte les services de sécurité, la gestion des processus, etc.
• une couche d'abstraction pour l'accès aux capteurs (HAL)
![Page 30: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/30.jpg)
• Dalvik est le nom de la machine virtuelle open-source
utilisée sur les systèmes Android. Cette machine virtuelle
exécute des fichiers .dex (dalvic executable), plus ramassés que les
.class classiques. Ce format évite par exemple la duplication
des String constantes.
• La machine virtuelle utilise elle-même moins d'espace mémoire et
l'adressage des constantes se fait par un pointeur de 32 bits.
• Dalvik n'est pas compatible avec une JVM . La librairie
d'accès est donc redéfinie entièrement par Google.
• A partir de Lollipop (5.0), Android dispose d'ART comme JVM
pour Android. Elle compile l'application au moment du
déploiement (Ahead-of-time compilation: compilation à
l’installation).
![Page 31: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/31.jpg)
![Page 32: Chapitre 2 Architecture et fonctionnalités de base de la ...](https://reader035.fdocuments.fr/reader035/viewer/2022062322/62aa2441bcb486148462ac52/html5/thumbnails/32.jpg)
Références
• Cours du Pr. Nini, université Larbi Ben M’Hidi.
• INTRODUCTION À LA PLATEFORME ANDROID (Imene Sghaier )
• https://fr.wikipedia.org/wiki/Historique_des_versions_d%27Android
• https://fr.wikipedia.org/wiki/Android_SDK