Android Architecture : couches d'application, framework, composant

Android La sortie initiale du systรจme d'exploitation remonte ร  2008. Mรชme ร  ses dรฉbuts, l'รฉquipe derriรจre le systรจme d'exploitation l'a construit sur les รฉpaules de gรฉants. Au-delร  de l'interface utilisateur que le Android OS se prรฉsente au niveau de la surface, il est constituรฉ de plusieurs couches. Ces couches incluent du code personnalisรฉ et des technologies open source qui sont en dรฉveloppement continu depuis des dรฉcennies.

Android Android a รฉtรฉ dรฉveloppรฉ grรขce ร  des efforts collaboratifs et des investissements massifs de la part de nombreuses entreprises. La principale sociรฉtรฉ ร  l'origine du dรฉveloppement d'Android est Google. Parmi les autres entreprises figurent des fabricants d'appareils tels que Samsung, LG, des fabricants de processeurs tels qu'Intel et ARM, pour n'en citer que quelques-uns.

Quand on parle de Android architecture, nous entendons comment la Android Le systรจme a รฉtรฉ conรงu, segmentรฉ en couches et construit pour fonctionner comme un systรจme. La construction d'un systรจme aussi complexe nรฉcessite une structuration minutieuse pour garantir que tous les composants fonctionnent ensemble de maniรจre cohรฉrente. Son architecture garantit que les nombreux composants fonctionnent comme un tout sans se bloquer.

Couches

Voici les couches qui composent le Android architecture telle qu'รฉtiquetรฉe sur le schรฉma :

  1. Application
  2. Cadre d'application
  3. Android Runtime et bibliothรจques principales
  4. Linux Kernel

Le dรฉveloppement dโ€™un systรจme dโ€™exploitation pour les appareils mobiles comporte un certain nombre de dรฉfis. L'utilisation de cette architecture en couches garantit que diffรฉrents problรจmes sont dรฉcomposรฉs et rรฉsolus ร  diffรฉrents niveaux.

Une architecture en couches permet de sรฉparer les problรจmes et garantit que les dรฉveloppeurs de logiciels Android n'ont pas ร  faire face ร  des problรจmes de bas niveau ร  chaque instant. Ils peuvent plutรดt se concentrer sur la crรฉation de valeur commerciale en fonction de la couche sur laquelle ils travaillent.

Les dรฉveloppeurs s'efforcent de crรฉer des applications sans avoir ร  se soucier de la mise en ล“uvre du cadre d'application. Ce travail est laissรฉ aux dรฉveloppeurs systรจme travaillant sur le framework d'application.

Les dรฉveloppeurs d'Application Framework travaillent sur l'expรฉrience des dรฉveloppeurs et n'ont pas ร  se soucier des pilotes de bas niveau. Les ingรฉnieurs systรจme de bas niveau peuvent se concentrer entiรจrement sur les composants de bas niveau tels que les pilotes Bluetooth ou audio, etc.

AndroidLa structure en couches de permet d'appliquer des mises ร  jour avec des corrections de bugs ou des amรฉliorations ร  chaque couche individuellement. Cela garantit que les modifications entre les couches nโ€™interfรจrent pas les unes avec les autres. Cela permet aux personnes travaillant ร  diffรฉrents niveaux du systรจme d'exploitation de se gรชner mutuellement ร  mesure que de nouvelles mises ร  jour et versions sont effectuรฉes.

Android Application

Android Application
Android Application

Il s'agit de la couche avec laquelle les utilisateurs finaux interagissent. C'est sur cette couche que les dรฉveloppeurs d'applications publient leurs applications ร  exรฉcuter.

Android, par dรฉfaut, est livrรฉ avec un ensemble d'applications qui rendent les appareils Android utilisables dรจs le dรฉpart.

  1. Accueil: La page d'accueil sur Android se compose d'icรดnes de lancement pour les applications couramment utilisรฉes auxquelles l'utilisateur final peut souhaiter un accรจs rapide. Vous pouvez dรฉmarrer les applications en cliquant sur les lanceurs de ces applications. Tout en haut de l'รฉcran, vous disposez de widgets qui affichent le rรฉseau, le niveau de la batterie, la date et l'heure.
  2. Contacts : Android, par dรฉfaut, fournit un moyen de stocker et de rรฉcupรฉrer des contacts. Les informations de contact sont partagรฉes entre d'autres applications pour amรฉliorer les fonctionnalitรฉs.
  3. Messages: Android offre la possibilitรฉ d'envoyer et de recevoir des messages SMS.
  4. Email : Android est livrรฉ avec un support natif pour les services de messagerie. Configuration d'un Android l'appareil nรฉcessite un compte Gmail. La configuration de Gmail active d'autres composants dรฉpendants de la messagerie รฉlectronique sur Android appareils. Certaines fonctionnalitรฉs dรฉpendantes du courrier รฉlectronique incluent des mรฉcanismes de sรฉcuritรฉ et de rรฉcupรฉration. Une autre fonctionnalitรฉ dรฉpendante du courrier รฉlectronique est l'accรจs au Play Store, un marchรฉ pour Android applications.
  5. Navigateur: Android est livrรฉ avec un navigateur par dรฉfaut.
  6. Tiroir de notifications : Faire glisser l'รฉcran vers le bas expose le tiroir de notification. Il fournit des รฉvรฉnements d'application dont l'utilisateur doit รชtre conscient. Au-dessus de la notification se trouvent un ensemble de raccourcis vers certains paramรจtres de pรฉriphรฉrique couramment utilisรฉs que les utilisateurs peuvent activer. Ces paramรจtres incluent des bascules d'activation et de dรฉsactivation pour divers composants matรฉriels tels que Bluetooth et Wifi. Un appui long sur ces รฉvรฉnements nous permet d'accรฉder ร  leur page de configuration.

Cette couche est รฉgalement appelรฉe niveau utilisateur, contrairement aux couches infรฉrieures qui sont principalement adaptรฉes au dรฉveloppement d'applications. Les dรฉveloppeurs d'applications crรฉent et personnalisent les expรฉriences de leurs applications sur cette couche. Les couches situรฉes sous la couche d'application ne sont pas personnalisรฉes par les dรฉveloppeurs d'applications. Elles sont considรฉrรฉes comme faisant partie de la couche systรจme. Ces couches sont personnalisรฉes par les fabricants d'appareils, les รฉquipes Google Android ou des tiers qui souhaitent utiliser la couche d'application. Android code source de leur produit ou de leur recherche.

Cadre d'application

L' Android Le systรจme d'exploitation expose les bibliothรจques et les fonctionnalitรฉs sous-jacentes du Android appareil qui utilise un Java API. C'est ce qu'on appelle le Android cadre. Le cadre expose un moyen sรปr et uniforme d'utiliser Android ressources de l'appareil.

Cadre d'application
Cadre d'application

1) Responsable d'activitรฉ

Les applications utilisent le Android composant d'activitรฉ pour prรฉsenter un point d'entrรฉe ร  l'application. Android Les activitรฉs sont les composants qui hรฉbergent l'interface utilisateur avec laquelle les utilisateurs de l'application interagissent. ร€ mesure que les utilisateurs finaux interagissent avec le Android appareil, ils dรฉmarrent, sโ€™arrรชtent et sautent dโ€™une application ร  lโ€™autre. Chaque รฉvรฉnement de navigation dรฉclenche l'activation et la dรฉsactivation de nombreuses activitรฉs dans les applications respectives.

L' Android ActivityManager est responsable d'un comportement prรฉvisible et cohรฉrent lors des transitions d'application. L'ActivityManager fournit un emplacement permettant aux crรฉateurs d'applications de faire rรฉagir leurs applications lorsque le Android Le systรจme d'exploitation effectue des actions globales. Les applications peuvent รฉcouter des รฉvรฉnements tels que la rotation d'un appareil, la destruction d'une application en raison d'un manque de mรฉmoire, le dรฉplacement d'une application hors du focus, etc.

Quelques exemples de la faรงon dont les applications peuvent rรฉagir ร  ces transitions incluent la pause d'une activitรฉ dans un jeu, l'arrรชt de la musique pendant un appel tรฉlรฉphonique.

2) Gestionnaire de fenรชtres

Android peut dรฉterminer les informations de l'รฉcran pour dรฉterminer les exigences nรฉcessaires ร  la crรฉation de fenรชtres pour les applications. Windows sont les emplacements oรน nous pouvons voir l'interface utilisateur de notre application. Android utilise le gestionnaire de fenรชtres pour fournir ces informations aux applications et au systรจme lors de leur exรฉcution afin qu'ils puissent s'adapter au mode d'exรฉcution de l'appareil.

Le gestionnaire de fenรชtres aide ร  offrir une expรฉrience d'application personnalisรฉe. Les applications peuvent remplir tout l'รฉcran pour une expรฉrience immersive ou partager l'รฉcran avec d'autres applications. Android permet cela en autorisant plusieurs fenรชtres pour chaque application.

3) Gestionnaire de localisation

pont Android les appareils sont รฉquipรฉs d'appareils GPS qui peuvent obtenir la localisation de l'utilisateur ร  l'aide d'informations satellite pouvant aller jusqu'ร  la prรฉcision des mรจtres. Les programmeurs peuvent demander l'autorisation de localisation aux utilisateurs, fournir une localisation et des expรฉriences conscientes.

Android est รฉgalement capable d'utiliser les technologies sans fil pour enrichir davantage les dรฉtails de localisation et augmenter la couverture lorsque les appareils sont dans des espaces clos. Android fournit ces fonctionnalitรฉs sous lโ€™รฉgide du Location-Manager.

4) Gestionnaire de tรฉlรฉphonie

pont Android les appareils jouent un rรดle primordial dans la tรฉlรฉphonie. Android utilise TelephoneManager pour combiner des composants matรฉriels et logiciels afin de fournir des fonctionnalitรฉs de tรฉlรฉphonie. Les composants matรฉriels comprennent des composants externes tels que la carte SIM et des composants de pรฉriphรฉrique tels que le microphone, la camรฉra et les haut-parleurs. Les composants logiciels incluent des composants natifs tels que le pavรฉ numรฉrique, l'annuaire tรฉlรฉphonique et les profils de sonnerie. ร€ l'aide de TelephoneManager, un dรฉveloppeur peut รฉtendre ou affiner la fonctionnalitรฉ d'appel par dรฉfaut.

5) Gestionnaire de ressources

Android l'application contient gรฉnรฉralement plus que du code. Ils disposent รฉgalement d'autres ressources telles que des icรดnes, des fichiers audio et vidรฉo, des animations, des fichiers texte, etc. Android contribue ร  garantir un accรจs efficace et rรฉactif ร  ces ressources. Cela garantit รฉgalement que les bonnes ressources sont fournies aux utilisateurs finaux. Par exemple, les fichiers texte de langue appropriรฉe sont utilisรฉs lors du remplissage des champs dans les applications.

6) Afficher le systรจme

Android fournit รฉgalement un moyen de crรฉer facilement des composants visuels communs nรฉcessaires ร  l'interaction avec l'application. Ces composants incluent des widgets tels que des boutons, des supports d'images tels que ImageView, des composants permettant d'afficher une liste d'รฉlรฉments tels que ListView et bien d'autres. Les composants sont prรฉdรฉfinis mais sont รฉgalement personnalisables pour s'adapter aux besoins et ร  l'image de marque des dรฉveloppeurs d'applications.

7) Gestionnaire de notifications

Le Gestionnaire de Notifications est chargรฉ d'informer Android utilisateurs d'รฉvรฉnements d'application. Pour ce faire, il donne aux utilisateurs des signaux visuels, audio ou vibratoires, ou une combinaison de ceux-ci, lorsqu'un รฉvรฉnement se produit. Ces รฉvรฉnements ont des dรฉclencheurs externes et internes. Quelques exemples de dรฉclencheurs internes sont des รฉvรฉnements d'รฉtat de batterie faible qui dรฉclenchent une notification indiquant une batterie faible. Un autre exemple concerne les รฉvรฉnements spรฉcifiรฉs par l'utilisateur, comme une alarme. Quelques exemples de dรฉclencheurs externes incluent de nouveaux messages ou de nouveaux rรฉseaux wifi dรฉtectรฉs.

Android fournit un moyen aux programmeurs et aux utilisateurs finaux d'affiner le systรจme de notifications. Cela peut contribuer ร  garantir qu'ils peuvent envoyer et recevoir des รฉvรฉnements de notification de la maniรจre qui leur convient le mieux, ainsi qu'ร  leur environnement actuel.

8) Gestionnaire de paquets

Android donne รฉgalement accรจs ร  des informations sur les applications installรฉes. Android assure le suivi des informations sur les applications telles que les รฉvรฉnements d'installation et de dรฉsinstallation, les autorisations demandรฉes par l'application et l'utilisation des ressources telles que la consommation de mรฉmoire.

Ces informations peuvent permettre aux dรฉveloppeurs de faire en sorte que leurs applications activent ou dรฉsactivent des fonctionnalitรฉs en fonction des nouvelles fonctionnalitรฉs prรฉsentรฉes par les applications compagnons.

9) Fournisseur de contenu

Android dispose d'un moyen standardisรฉ de partager des donnรฉes entre les applications de l'appareil ร  l'aide du fournisseur de contenu. Les dรฉveloppeurs peuvent utiliser le fournisseur de contenu pour exposer les donnรฉes ร  d'autres applications. Par exemple, ils peuvent rendre les donnรฉes de l'application consultables ร  partir d'applications de recherche externes. Android expose lui-mรชme des donnรฉes telles que les donnรฉes de calendrier, les donnรฉes de contact, etc. en utilisant le mรชme systรจme.

Android Runtime et bibliothรจques principales/natives

Android Runtime et bibliothรจques principales/natives
Bibliothรจques

1) Android Runtime

Android utilise actuellement Android Runtime (ART) pour exรฉcuter le code de l'application. ART est prรฉcรฉdรฉ par le runtime Dalvik qui a compilรฉ le code du dรฉveloppeur dans des fichiers exรฉcutables Dalvik (fichiers Dex). Ces environnements d'exรฉcution sont optimisรฉs pour la plateforme Android en tenant compte des contraintes de processeur et de mรฉmoire sur les appareils mobiles.

L'environnement d'exรฉcution traduit le code รฉcrit par les programmeurs en code machine qui effectue des calculs et utilise les composants du framework Android pour fournir des fonctionnalitรฉs. Android hรฉberge plusieurs applications et composants systรจme qui sโ€™exรฉcutent chacun dans leurs processus.

Bibliothรจques principales

Dans ce segment, nous discuterons de certaines des bibliothรจques principales prรฉsentes dans le Android systรจme opรฉrateur.

2) Cadre mรฉdiatique

Android prend รฉgalement en charge nativement les codecs multimรฉdias populaires, ce qui facilite la tรขche des applications crรฉรฉes sur le Android plate-forme permettant d'utiliser/lire des composants multimรฉdias prรชts ร  l'emploi.

3) SQLite

Android a รฉgalement un SQLite base de donnรฉes qui permet aux applications de disposer de fonctionnalitรฉs de base de donnรฉes natives trรจs rapides sans avoir besoin de bibliothรจques tierces.

4) Type libre

Android est livrรฉ avec un moteur de polices rapide et flexible prรฉinstallรฉ. Cela permet aux dรฉveloppeurs d'applications de styliser les composants de leur application et d'offrir une expรฉrience riche qui communique l'intention du dรฉveloppeur.

5) OpenGL

Android est รฉgalement livrรฉ avec le systรจme graphique OpenGL. C'est une bibliothรจque C qui aide Android utiliser des composants matรฉriels dans le rendu en temps rรฉel de graphiques 2D et 3D.

6) SSL

Android est รฉgalement livrรฉ avec une couche de sรฉcuritรฉ intรฉgrรฉe pour permettre une communication sรฉcurisรฉe entre les applications sur Android et d'autres appareils tels que des serveurs, d'autres appareils mobiles, des routeurs 6.

7) ChS

Android est livrรฉ avec une bibliothรจque graphique implรฉmentรฉe dans un code de bas niveau qui restitue efficacement les graphiques pour la plate-forme Android. Il fonctionne avec les composants de niveau supรฉrieur du Android cadre Android pipeline graphique.

8) Libc

Le noyau de Android contient des bibliothรจques รฉcrites en C et C++, qui sont des langages de bas niveau destinรฉs ร  une utilisation intรฉgrรฉe et qui aident ร  maximiser les performances. Libc fournit un moyen d'exposer des fonctionnalitรฉs systรจme de bas niveau telles que les threads, les sockets, les E/S, etc. ร  ces bibliothรจques.

9) Kit Web

Il s'agit d'un moteur de navigateur open source utilisรฉ comme base pour crรฉer des navigateurs. Le dรฉfaut Android navigateur avant la version 4.4, KitKat l'utilise pour le rendu des pages Web. Il permet aux dรฉveloppeurs d'applications de restituer les composants Web dans le systรจme de visualisation ร  l'aide de WebView. Cela permet aux applications d'intรฉgrer des composants Web dans leurs fonctionnalitรฉs.

10) Gestionnaire de surfaces

Le gestionnaire de surface est chargรฉ dโ€™assurer le rendu fluide des รฉcrans dโ€™application. Pour ce faire, il compose des graphiques 2D et 3D pour le rendu. Il permet en outre cela en effectuant une mise en mรฉmoire tampon hors รฉcran.

Linux Kernel

Le composant racine du Android Le systรจme est le noyau Linux. C'est la piรจce fondamentale qui permet ร  tous Androidla fonctionnalitรฉ.

Linux Kernel

Le noyau Linux est un logiciel รฉprouvรฉ qui a รฉtรฉ utilisรฉ dans le dรฉveloppement systรจmes d'exploitation pour des appareils d'une large gamme, des superordinateurs aux petits gadgets. Ses capacitรฉs de traitement sont limitรฉes, comme les petits gadgets en rรฉseau pour l'Internet des objets (IoT).

Le noyau Linux peut รชtre modifiรฉ pour rรฉpondre aux spรฉcifications des appareils afin de permettre aux fabricants de faire Android des appareils dotรฉs de diffรฉrentes capacitรฉs pour correspondre ร  l'expรฉrience utilisateur.

En ce qui concerne Android, le noyau est responsable de nombreuses fonctionnalitรฉs fondamentales, y compris, mais sans s'y limiter, celles-ci :

  1. Pilotes de pรฉriphรฉrique
  2. Gestion de la mรฉmoire
  3. Gestion des processus

Dรฉveloppons certaines fonctionnalitรฉs :

Pilotes de pรฉriphรฉrique

Le noyau Linux hรฉberge les pilotes nรฉcessaires pour permettre au systรจme d'exploitation de fonctionner avec diffรฉrents composants matรฉriels. Ces pilotes fournissent une interface standard avec laquelle les composants matรฉriels provenant de diffรฉrents fabricants peuvent fonctionner.

Cela permet aux fabricants d'appareils de se procurer diffรฉrents composants, tels que des composants Bluetooth, des composants Wifi, des composants de camรฉra. Tant que les fabricants correspondent aux Android spรฉcifications standard, lโ€™intรฉgration est transparente.

1) Pilote USB

Linux fournit รฉgalement Android avec un moyen d'interface avec les pรฉriphรฉriques USB. Les appareils modernes sont รฉquipรฉs de diffรฉrents ports USB, notamment USB 2.0 et de nouvelles versions USB, notamment USB-C. Ces pilotes permettent d'utiliser le port USB pour charger, transfรฉrer des donnรฉes en direct telles que les journaux du Android appareils et interagir avec l'androรฏde systรจme de fichiers.

2) Pilote Bluetooth

Le noyau Linux prend en charge l'interface avec les composants matรฉriels Bluetooth. Il fournit un moyen de lire et d'รฉcrire des donnรฉes reรงues ร  partir des frรฉquences radio Bluetooth prises en charge. Il offre รฉgalement un ensemble d'installations pour Android pour configurer Bluetooth.

3) Pilote Wi-Fi

Le noyau Linux fournit des pilotes pour intรฉgrer les composants matรฉriels du rรฉseau WiFi. Les composants WiFi intรฉgrรฉs dans les appareils mobiles permettent Android appareils pour se connecter aux rรฉseaux wifi. Le pilote permet aux composants wifi de diffuser des rรฉseaux wifi et de crรฉer des hotspots.

4) Pilote d'affichage

Android permet de s'interfacer avec des composants d'affichage. Pour la plupart des appareils, le composant d'interface est un รฉcran tactile LCD. Il permet de prendre en charge la configuration et le dessin des pixels.

5) Pilote audio

Android les appareils sont gรฉnรฉralement livrรฉs avec des composants matรฉriels pour lโ€™entrรฉe et la sortie audio. Les pilotes audio du noyau permettent le Android systรจme pour utiliser lโ€™audio reรงu de ces composants et produire รฉgalement une sortie audio.

6) Gestionnaire de puissance

pont Android les appareils sont utilisรฉs lorsquโ€™ils sont dรฉbranchรฉs des prises de courant. Ils dรฉpendent donc de batteries pour les alimenter pendant une grande partie de leur utilisation. Le noyau Linux est livrรฉ avec un systรจme de gestion de l'รฉnergie configurable pour rรฉpondre aux besoins des appareils qui l'utilisent.

Android Le systรจme d'exploitation utilise le gestionnaire d'alimentation pour rendre les autres composants de l'appareil sensibles ร  l'alimentation. Pour ce faire, il diffuse divers รฉtats liรฉs ร  la puissance. Ces รฉtats sont Veille, Veille et Batterie faible. Sur Android, le gestionnaire d'alimentation est rรฉglรฉ par dรฉfaut en mode veille pour garantir une durรฉe de vie maximale de la batterie.

Le Power Manager expose les moyens permettant aux applications de rรฉagir aux diffรฉrents modes d'alimentation. Les applications peuvent รฉgalement modifier leur comportement pour correspondre ร  l'รฉtat d'alimentation actuel de l'appareil.

Une application peut รฉgalement demander de modifier les stratรฉgies d'alimentation par dรฉfaut. Les applications peuvent atteindre les fonctionnalitรฉs souhaitรฉes, telles que maintenir les composants matรฉriels actifs. Un exemple consiste ร  garder l'รฉcran actif lors de la lecture d'un livre pour garantir qu'un utilisateur n'est pas interrompu. Un autre exemple consiste ร  garder les composants audio allumรฉs lorsque vous รฉcoutez de la musique en arriรจre-plan.

7) Mรฉmoire Flash

pont Android les appareils utilisent la mรฉmoire flash comme moyen de stockage. La mรฉmoire Flash est rapide et prend moins de place, ce qui la rend parfaite pour les petits appareils. Le noyau Linux fournit un moyen pour Android appareils pour lire et รฉcrire dans la mรฉmoire flash. Il fournit un moyen de partitionner la mรฉmoire de telle maniรจre que le systรจme d'exploitation et d'autres applications puissent partager facilement et efficacement la ressource mรฉmoire.

8) Classeur

Android hรฉberge de nombreuses applications et composants systรจme qui s'exรฉcutent chacun dans leurs processus. Dans la plupart des cas, ces processus doivent รชtre isolรฉs les uns des autres pour รฉviter les interfรฉrences et la corruption des donnรฉes. Pourtant, il existe des cas oรน nous souhaitons transmettre des donnรฉes d'un processus ร  un autre.

Le noyau Linux permet la fonctionnalitรฉ de partage de donnรฉes en fournissant des pilotes de classeur. Les pilotes de classeur permettent la communication inter-processus, IPC. L'utilisation de processus IPC permet de dรฉcouvrir d'autres processus et de partager des informations.

Gestion de la mรฉmoire

Une autre responsabilitรฉ du noyau Linux est la gestion de la mรฉmoire. Lorsque diffรฉrentes applications s'exรฉcutent, le noyau garantit que l'espace mรฉmoire qu'elles utilisent n'entre pas en conflit et ne s'รฉcrase pas.

Cela permet รฉgalement de garantir que toutes les applications en cours d'exรฉcution disposent de suffisamment de mรฉmoire pour fonctionner, en garantissant qu'aucune application ne prend trop de place.

Gestion des processus

Chaque application dans Android s'exรฉcute dans un processus. Le Kernel est รฉgalement responsable de la gestion des processus. Cela signifie qu'il est responsable de la crรฉation, de la pause, de l'arrรชt, de l'arrรชt ou de l'arrรชt des processus.

Le noyau permet diverses fonctionnalitรฉs telles que l'exรฉcution de plusieurs processus en mรชme temps, la communication entre les processus, l'exรฉcution de processus en arriรจre-plan, etc.

Comme chaque processus nรฉcessite son propre espace mรฉmoire pour fonctionner correctement, le noyau garantit que les espaces mรฉmoire allouรฉs ร  chaque processus sont protรฉgรฉs des autres processus. Cela garantit รฉgalement que les ressources telles que RAM allouรฉs aux processus sont libรฉrรฉs lorsque les processus sont arrรชtรฉs.

Le noyau Linux est รฉgalement chargรฉ de distribuer le travail aux processeurs prรฉsents dans l'appareil. Cela permet de maximiser les performances des appareils dotรฉs de plusieurs cล“urs, car diffรฉrentes applications auront des processus exรฉcutรฉs sur un cล“ur diffรฉrent.

Le noyau Linux effectue plus de tรขches sous le capot, notamment en assurant la sรฉcuritรฉ.

Rรฉsumรฉ

  • Android l'architecture est organisรฉe en couches.
  • Chaque couche rรฉsout un ensemble unique de problรจmes.
  • Les utilisateurs finaux interagissent avec les applications sur la couche Application
  • Les dรฉveloppeurs d'applications dรฉveloppent des applications ร  utiliser sur la couche Application. Pour ce faire, ils utilisent des outils et des abstractions fournis par Application Framework.
  • Android La couche Framework simplifie l'accรจs aux composants de bas niveau en crรฉant une API sur les bibliothรจques natives.
  • Android Runtime et Core-Libraries utilisent des langages de bas niveau ainsi que des optimisations pour les appareils mobiles. Cela garantit que le code รฉcrit par les dรฉveloppeurs d'applications fonctionne correctement malgrรฉ Android contraintes de lโ€™appareil.
  • Au bas de la Android la pile logicielle est le noyau Linux. Il s'interface avec les composants matรฉriels courants dans Android dispositifs.

Rรฉsumez cet article avec :