0% ont trouvé ce document utile (0 vote)
4 vues6 pages

Platform Android

Le document décrit l'architecture du système d'exploitation Android, qui se compose de plusieurs couches, dont le noyau Linux, les bibliothèques natives, l'Android Runtime, le cadre d'application et les applications elles-mêmes. Chaque couche interagit avec celle en dessous, rendant le système modulaire et facile à développer, avec des outils comme Android Studio et le SDK Android pour aider les développeurs. Les fichiers de configuration et de ressources, tels que AndroidManifest.xml et les répertoires Java et res, sont également détaillés pour illustrer la structure d'une application Android.

Transféré par

marouadjouzi25
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
4 vues6 pages

Platform Android

Le document décrit l'architecture du système d'exploitation Android, qui se compose de plusieurs couches, dont le noyau Linux, les bibliothèques natives, l'Android Runtime, le cadre d'application et les applications elles-mêmes. Chaque couche interagit avec celle en dessous, rendant le système modulaire et facile à développer, avec des outils comme Android Studio et le SDK Android pour aider les développeurs. Les fichiers de configuration et de ressources, tels que AndroidManifest.xml et les répertoires Java et res, sont également détaillés pour illustrer la structure d'une application Android.

Transféré par

marouadjouzi25
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Architecture du système d'exploitation Android

🔴 Linux Kernel (pont entre le matériel et le logiciel)


●​ Constitue le cœur du système Android
●​ Assure la communication entre le matériel et le système
●​ Gère les composants matériels (écran, caméra, Wi-Fi, Bluetooth, audio, batterie…)
●​ Intègre les pilotes (drivers)
●​ Garantit la sécurité du système
●​ Gère la mémoire, les processus et les droits des utilisateurs

🟢 Libraries (Bibliothèques natives qui fournissent un accès direct aux ressources du


système )

Bibliothèques en C/C++

Fonctions de base :

●​ SQLite : base de données relationnelle


●​ FreeType : moteur de rendu des polices de caractère
●​ WebKit : moteur de rendu HTML
●​ Media Framework : cette bibliothèque gère tout ce qui se rapporte aux données
●​ multimédia.
●​ SGL : gère le graphisme en 2D.
●​ OpenGL/ES : gère le graphisme en 3D
●​ Surface Manager : ensemble de fonctions permettant la gestion du dispositif
d’affichage. Il permet de s’assurer que les pixels s’affichent bien à l’écran.
●​ OpenSSL : algorithme de cryptage des données

🟡 Android Runtime
●​ Android utilise une machine virtuelle Java adaptée aux appareils mobiles.​

●​ Dalvik VM : machine virtuelle alternative conçue pour Android, permettant


l’exécution simultanée de plusieurs applications.​

●​ Elle s’appuie sur des fonctionnalités Linux comme la gestion de la mémoire et le


multithreading, et chaque application s’exécute dans son propre processus avec une
instance dédiée de la VM.​

●​ Depuis Android 5.0 (Lollipop), Dalvik a été remplacé par ART (Android Runtime),
plus performant et optimisé pour l’exécution des applications.

🔵 Application Framework
C’est un ensemble d’outils et d’API que les développeurs utilisent pour créer des
applications android

Il fournit des services prêts à l’emploi, comme :

●​ Activity Manager : gère les écrans et les interactions de l’application,


●​ Notification Manager : gère les notifications,
●​ Location Manager : gère la localisation,
●​ Telephony Manager : gère les appels et SMS.

Il inclut aussi des outils pour créer et gérer l’interface utilisateur, via le système d’affichage.​
Les développeurs utilisent ces API pour construire des applications de façon rapide et
efficace.

🔷 Applications
●​ Applications système et utilisateur (développées à l'aide du Cadre d'Application et
des bibliothèques de Base)


Chaque couche utilise celle du dessous, ce qui rend Android modulaire, portable et facile
à développer.


Android Studio : est le logiciel que les développeurs utilisent pour créer des applications
Android. C’est un IDE (Environnement de Développement Intégré), ce qui signifie qu’il
regroupe tous les outils nécessaires dans un seul programme. Il a été développé par Google
et est basé sur la plateforme IntelliJ IDEA.

Ses principales fonctionnalités sont :

●​ Éditeur de code : aide à écrire le code plus rapidement avec des suggestions
automatiques et détecte les erreurs.
●​ Éditeur de mise en page : permet de créer visuellement l’interface de l’application
(boutons, images, textes…).
●​ Émulateur : simule un smartphone ou une tablette pour tester l’application sans
appareil physique.
●​ Outils de débogage : identifie et corrige les erreurs dans le code.
●​ Système de build Gradle : s’occupe de compiler, tester et déployer les
applications automatiquement.
●​ Plugins : permettent d’ajouter des fonctionnalités à l’IDE selon les besoins du
développeur.
●​ Environnement intégré : tout est regroupé dans un seul logiciel pour écrire, tester
et lancer les applications facilement.

Android SDK : signifie Kit de développement logiciel. Il s'agit d'un ensemble d'outils de
développement logiciel regroupés dans un seul paquet installable.

❖​ Les SDK sont utilisés pour développer des applications pour une plateforme
spécifique, comme Android ou iOS.
❖​ Un SDK Android inclut des bibliothèques, des outils, des exemples de code et des
documentations nécessaires au développement d'applications Android.

Le SDK Android inclut les composants suivants :

●​ Émulateur Android : un appareil virtuel qui fonctionne sur votre ordinateur pour tester
votre application.
●​ Outils SDK Android : un ensemble d'outils incluant ADB (Android Debug Bridge), qui
permet de communiquer avec un émulateur ou un appareil, et AAPT (Android Asset
Packaging Tool), qui emballe les ressources dans un APK
●​ Outils Plateforme Android : un ensemble d'outils offrant des fonctionnalités
supplémentaires pour le débogage et le chargement de votre application.
●​ Bibliothèque de support Android : un ensemble de bibliothèques de support pour
intégrer la compatibilité dans votre application.
●​ APIs Google : un ensemble d'APIs permettant d'accéder aux services Google depuis
votre application.
●​ Code exemple et documentation : Des exemples de code et de la documentation
pour vous aider à démarrer le développement d'applications Android.

Anatomie de l'application Android


[Link] : décrit les caractéristiques fondamentales de l'application et définit
chacun de ses composants.

Java : contient les fichiers source .java pour le projet. Par défaut, il inclut un fichier source
[Link]

res/drawable : fichiers XML et images, icônes utilisés dans l’interface. répertoire pour les
objets conçus pour les écrans haute densité.

Res/layout : un répertoire pour les fichiers qui définissent l'interface utilisateur de


l'application.

Res/mipmap : images, icônes utilisés dans l’interface

Res/Values : un répertoire pour d'autres fichiers XML divers contenant une collection de
ressources, telles que des définitions de chaînes et de couleurs.

Gradle scripts : l'outil de compilation du projet. Un fichier généré automatiquement qui


contient compileSdkVersion, buildToolsVersion, applicationId, minSdkVersion,
targetSdkVersion, versionCode et versionName.

Projet Android
[Link] : le fichier [Link] est le fichier de configuration principal d'une
application Android. Il contient des informations sur l'application, telles que le nom de
l'application, le nom du paquet, les permissions requises et les activités qui composent
l'application.

[Link] : ce répertoire contient les fichiers de code source Java de l'application. Le fichier de
l'activité principale et toutes les autres classes Java de l'application s'y trouvent également.

[Link] : le répertoire res contient toutes les ressources non codées utilisées par l'application,
telles que les images, les fichiers de mise en page, les chaînes de caractères et les styles.

[Link] scripts : les fichiers [Link] contiennent les paramètres du projet et de


l'application pour le système de construction Gradle. Ils servent à configurer le processus de
construction de l'application, y compris les dépendances et les options de compilation.

Dossier Java

● Le dossier "java" dans un projet Android contient tout le code source Java de l'application.
Cela inclut toutes les classes et le code utilisé pour construire les fonctionnalités de
l'application. C'est ici que les développeurs écrivent la majorité du code de l'application, y
compris la définition de l'interface utilisateur, la gestion des données et du stockage, le
traitement des événements d'entrée et la mise en oeuvre de la logique de l'application.

● Le code rédigé dans le dossier "java" est compilé en bytecode qui s'exécute sur l'appareil
Android, permettant ainsi à l'application de fonctionner et d'offrir ses fonctionnalités aux
utilisateurs.
Dossier Res

Le dossier res dans un projet Android contient toutes les ressources utilisées par
l'application, les types courants de ressources le dossier res : telles que les fichiers de mise
en page, les images, les chaînes de caractères et plus encore. Voici que

● layout : contient les fichiers XML qui définissent l'interface utilisateur de l'application.

● drawable : contient les images et autres ressources utilisées dans l'application.

● values : Contient les fichiers XML qui définissent diverses valeurs utilisées dans

l'application, comme les chaînes de caractères, les couleurs et les dimensions.

● anim : contient les fichiers XML qui définissent les animations utilisées dans l'application.

● menu : contient les fichiers XML qui définissent les menus utilisés dans l'application.

Le contenu spécifique de ce dossier peut varier selon les besoins de votre application.

Vous aimerez peut-être aussi