Android ArchiTecture: Application Layers, Framework, Component

Android käyttöjärjestelmän ensimmäinen julkaisu oli vuonna 2008. Jo sen alussa, käyttöjärjestelmän takana oleva tiimi rakensi sen jättiläisten harteille. Käyttöliittymän lisäksi Android OS esiintyy pintatasolla, se koostuu useista kerroksista. Nämä tasot sisältävät mukautetun koodin ja avoimen lähdekoodin teknologiat, joita on kehitetty jatkuvasti vuosikymmeniä.

Android on kehitetty useiden yritysten massiivisella yhteistyöllä ja investoinneilla. Tärkein Android-kehityksen takana oleva yritys on Google. Muita yrityksiä ovat laitevalmistajat, kuten Samsung, LG; prosessorivalmistajat, kuten Intel ja ARM, mutta muutamia mainitakseni.

Kun puhumme Android arkkitehtuuri, tarkoitamme kuinka Android järjestelmä on suunniteltu, segmentoitu kerroksiin ja rakennettu toimimaan järjestelmänä. Tällaisen monimutkaisen järjestelmän rakentaminen vaatii huolellista strukturointia, jotta kaikki komponentit toimivat yhtenäisesti yhdessä. Sen arkkitehtuuri varmistaa, että monet komponentit toimivat kokonaisuutena kaatumatta.

Tasot

Seuraavat ovat kerrokset, jotka muodostavat Android kaaviossa merkitty arkkitehtuuri:

  1. Hakemus
  2. Sovelluskehys
  3. Android Runtime- ja ydinkirjastot
  4. Linux-ydin

Mobiililaitteiden käyttöjärjestelmän kehittäminen tuo mukanaan haasteita. Tämän kerrostetun arkkitehtuurin käyttäminen varmistaa, että erilaiset ongelmat puretaan ja ratkaistaan ​​eri tasoilla.

Kerrostettu arkkitehtuuri auttaa erottamaan huolenaiheet ja varmistamaan, että Android-ohjelmistokehittäjien ei tarvitse käsitellä matalan tason ongelmia joka käänteessä. He voivat sen sijaan keskittyä tuottamaan liiketoiminta-arvoa sen kerroksen kanssa, jonka parissa he työskentelevät.

Kehittäjät työskentelevät saadakseen sovellusten ei tarvitse huolehtia sovelluskehyksen toteutuksesta. Tämä työ jätetään sovelluskehyksen parissa työskenteleville järjestelmäkehittäjille.

Application Framework -kehittäjät työskentelevät kehittäjäkokemuksen parissa, eikä heidän tarvitse huolehtia matalan tason ohjaimista. Matalatason järjestelmäinsinöörit voivat keskittyä täysin matalan tason komponentteihin, kuten Bluetooth- tai ääniajureihin ja vastaaviin.

Androidn kerrosrakenne mahdollistaa virheenkorjauksilla tai parannuksilla sisältävien päivitysten asentamisen jokaiseen tasoon erikseen. Tämä varmistaa, että muutokset tasojen välillä eivät häiritse toisiaan. Tämä mahdollistaa sen, että käyttöjärjestelmän eri tasoilla työskentelevät ihmiset voivat työskennellä estämällä toisiaan uusia päivityksiä ja julkaisuja tehtäessä.

Android Hakemus

Android Hakemus
Android Hakemus

Tämä on taso, jonka kanssa loppukäyttäjät ovat vuorovaikutuksessa. Tällä tasolla sovelluskehittäjät julkaisevat sovelluksensa suoritettavaksi.

Android, oletusarvoisesti mukana tulee joukko sovelluksia, jotka tekevät Android-laitteista käyttökelpoisia offsetista alkaen.

  1. Koti: Kotisivu päällä Android koostuu yleisesti käytettyjen sovellusten käynnistyskuvakkeista, joihin loppukäyttäjä saattaa haluta nopean pääsyn. Voit käynnistää sovellukset napsauttamalla näiden sovellusten käynnistysohjelmia. Näytön yläreunassa on widgetit, jotka näyttävät verkon, akun tason, päivämäärän ja ajan.
  2. Yhteydet: Androidtarjoaa oletusarvoisesti tavan tallentaa ja hakea yhteystietoja. Yhteystiedot jaetaan muiden sovellusten kesken toiminnallisuuden parantamiseksi.
  3. Viestit: Android tarjoaa mahdollisuuden lähettää ja vastaanottaa tekstiviestejä.
  4. Sähköposti: Android mukana tulee alkuperäinen tuki sähköpostipalveluille. Asetetaan an Android laite vaatii Gmail-tilin. Gmailin määrittäminen aktivoi muita sähköpostiin liittyviä komponentteja Android laitteita. Jotkut sähköpostista riippuvat ominaisuudet sisältävät suojaus- ja palautusmekanismeja. Toinen sähköpostista riippuvainen ominaisuus on pääsy Play Kauppaan, joka on kauppapaikka Android sovelluksissa.
  5. Selain: Android mukana tulee oletusselain.
  6. Ilmoituslaatikko: Pyyhkäiseminen alaspäin näytöllä paljastaa ilmoituslaatikon. Se tarjoaa sovellustapahtumia, jotka käyttäjän tulee olla tietoisia. Ilmoituksen yläpuolella on joukko pikakuvakkeita joihinkin yleisesti käytettyihin laiteasetuksiin, joita käyttäjät voivat vaihtaa. Nämä asetukset sisältävät päälle- ja poiskytkimet eri laitteistokomponenteille, kuten Bluetoothille ja Wi-Fi:lle. Painamalla näitä tapahtumia pitkään voimme siirtyä niiden määrityssivulle.

Tätä tasoa kutsutaan myös käyttäjätasoksi, toisin kuin alla olevat tasot, jotka on enimmäkseen viritetty sovelluskehitystä varten. Sovelluskehittäjät luovat ja mukauttavat kokemuksia sovelluksilleen tällä tasolla. Sovelluskehittäjät eivät ole mukauttaneet sovelluskerroksen alla olevia tasoja. Niitä pidetään osana järjestelmäkerrosta. Laitevalmistajat, Googlen Android-tiimit tai kolmannet osapuolet, jotka haluavat käyttää näitä tasoja, ovat mukauttaneet näitä tasoja Android lähdekoodia tuotteelleen tai tutkimukselleen.

Sovelluskehys

- Android OS paljastaa taustalla olevat kirjastot ja ominaisuudet Android laite, joka käyttää a Java API. Tämä tunnetaan nimellä Android puitteet. Kehys paljastaa turvallisen ja yhtenäisen tavan hyödyntää Android laiteresurssit.

Sovelluskehys
Sovelluskehys

1) Toimintapäällikkö

Sovellukset käyttävät Android toimintokomponentti tulopisteen esittämiseksi sovellukselle. Android Aktiviteetit ovat komponentteja, jotka sisältävät käyttöliittymän, jonka kanssa sovelluksen käyttäjät ovat vuorovaikutuksessa. Kun loppukäyttäjät ovat vuorovaikutuksessa Android laitteella, ne käynnistyvät, pysähtyvät ja hyppäävät edestakaisin monissa sovelluksissa. Jokainen navigointitapahtuma laukaisee useiden toimintojen aktivoinnin ja deaktivoinnin vastaavissa sovelluksissa.

- Android ActivityManager on vastuussa ennustettavasta ja johdonmukaisesta käyttäytymisestä sovellussiirtymien aikana. ActivityManager tarjoaa sovellusten luojille paikan, jossa heidän sovelluksensa reagoivat, kun Android OS suorittaa globaaleja toimintoja. Sovellukset voivat kuunnella tapahtumia, kuten laitteen pyörimistä, sovellusten tuhoutumista muistin puutteen vuoksi, sovelluksen siirtymistä epätarkkuudesta ja niin edelleen.

Joitakin esimerkkejä tavasta, jolla sovellukset voivat reagoida näihin siirtymiin, ovat toiminnan keskeyttäminen pelissä tai musiikin toiston pysäyttäminen puhelun aikana.

2) Ikkunanhallinta

Android voi määrittää näytön tiedot määrittääkseen vaatimukset, joita tarvitaan sovellusten ikkunoiden luomiseen. Windows ovat paikkoja, joissa voimme tarkastella sovelluksemme käyttöliittymää. Android käyttää Ikkunanhallintaa antaakseen nämä tiedot sovelluksille ja järjestelmälle niiden ollessa käynnissä, jotta ne voivat mukautua laitteen toimintatilaan.

Ikkunanhallinta auttaa tarjoamaan mukautetun sovelluskokemuksen. Sovellukset voivat täyttää koko näytön saadakseen mukaansatempaavan kokemuksen tai jakaa näytön muiden sovellusten kanssa. Android mahdollistaa tämän sallimalla useita ikkunoita jokaiselle sovellukselle.

3) Location Manager

bridge Android laitteet on varustettu GPS-laitteilla, jotka voivat saada käyttäjän sijainnin satelliittitiedon avulla, joka voi ulottua metrin tarkkuudella. Ohjelmoijat voivat pyytää käyttäjiltä sijaintilupaa, toimittaa sijainnin ja tietoisia kokemuksia.

Android pystyy myös hyödyntämään langattomia teknologioita rikastuttamaan sijaintitietoja ja lisäämään peittoa, kun laitteet ovat suljetuissa tiloissa. Android tarjoaa nämä ominaisuudet Location-Managerin sateenvarjossa.

4) Puhelinpäällikkö

bridge Android laitteet ovat ensisijainen rooli puhelimessa. Android käyttää TelephoneManageria laitteisto- ja ohjelmistokomponenttien yhdistämiseen puhelintoimintojen tarjoamiseksi. Laitteistokomponentit sisältävät ulkoisia osia, kuten SIM-kortin, ja laitteen osia, kuten mikrofonin, kameran ja kaiuttimet. Ohjelmistokomponentit sisältävät alkuperäisiä komponentteja, kuten valintanäppäimistön, puhelinluettelon ja soittoääniprofiilit. TelephoneManagerin avulla kehittäjä voi laajentaa tai hienosäätää oletussoittotoimintoja.

5) Resurssipäällikkö

Android sovelluksessa on yleensä muutakin kuin pelkkä koodi. Heillä on myös muita resursseja, kuten kuvakkeita, ääni- ja videotiedostoja, animaatioita, tekstitiedostoja ja vastaavia. Android auttaa varmistamaan, että näitä resursseja on saatavilla tehokkaasti ja nopeasti. Se myös varmistaa, että oikeat resurssit toimitetaan loppukäyttäjille. Esimerkiksi sovellusten kenttiä täytettäessä käytetään oikeankielisiä tekstitiedostoja.

6) Näytä järjestelmä

Android tarjoaa myös tavan luoda helposti yhteisiä visuaalisia komponentteja, joita tarvitaan sovellusten vuorovaikutukseen. Näihin osiin kuuluvat widgetit, kuten painikkeet, kuvapidikkeet, kuten ImageView, kohteiden luettelon näyttämiseen tarkoitetut komponentit, kuten ListView, ja paljon muuta. Komponentit ovat valmiita, mutta ne ovat myös muokattavissa sovellusten kehittäjien tarpeiden ja brändäyksen mukaan.

7) Ilmoituspäällikkö

Ilmoituspäällikkö vastaa tiedottamisesta Android sovellustapahtumien käyttäjät. Se tekee tämän antamalla käyttäjille visuaalisia, ääni- tai värinäsignaaleja tai niiden yhdistelmää tapahtuman sattuessa. Näillä tapahtumilla on ulkoisia ja sisäisiä laukaisimia. Joitakin esimerkkejä sisäisistä laukaisimista ovat akun heikon tilatapahtumat, jotka laukaisevat ilmoituksen akun heikentymisestä. Toinen esimerkki ovat käyttäjän määrittämät tapahtumat, kuten hälytys. Joitakin esimerkkejä ulkoisista laukaisimista ovat uudet viestit tai havaitut uudet wifi-verkot.

Android tarjoaa ohjelmoijille ja loppukäyttäjille keinon hienosäätää ilmoitusjärjestelmää. Tämä voi auttaa varmistamaan, että he voivat lähettää ja vastaanottaa ilmoitustapahtumia heille ja heidän nykyiseen ympäristöönsä parhaiten sopivalla tavalla.

8) Pakettipäällikkö

Android tarjoaa myös pääsyn asennettujen sovellusten tietoihin. Android pitää kirjaa sovelluksen tiedoista, kuten asennus- ja poistotapahtumista, sovelluspyyntöjen luvista ja resurssien käytöstä, kuten muistin kulutuksesta.

Näiden tietojen avulla kehittäjät voivat saada sovelluksensa aktivoimaan tai deaktivoimaan toiminnallisuutta täydentävien sovellusten uusien ominaisuuksien mukaan.

9) Sisällöntarjoaja

Android on standardoitu tapa jakaa tietoja laitteen sovellusten välillä sisällöntarjoajan avulla. Kehittäjät voivat käyttää sisällöntarjoajaa paljastaakseen tietoja muille sovelluksille. He voivat esimerkiksi tehdä sovellusdatan haettavaksi ulkoisista hakusovelluksista. Android itse paljastaa tietoja, kuten kalenteritietoja, yhteystietoja ja vastaavia samaa järjestelmää käyttäen.

Android Runtime ja Core/Native kirjastot

Android Runtime ja Core/Native kirjastot
kirjastot

1) Android Runtime

Android tällä hetkellä käyttää Android Runtime (ART) sovelluskoodin suorittamiseen. ART:ta edeltää Dalvik Runtime, joka käänsi kehittäjäkoodin Dalvik Executable -tiedostoihin (Dex-tiedostoihin). Nämä suoritusympäristöt on optimoitu Android-alustalle ottaen huomioon mobiililaitteiden prosessorin ja muistin rajoitteet.

Suoritusaika kääntää ohjelmoijien kirjoittaman koodin konekoodiksi, joka suorittaa laskelmia ja käyttää Android-kehyskomponentteja toiminnallisuuden tuottamiseen. Android isännöi useita sovelluksia ja järjestelmäkomponentteja, jotka kukin toimivat prosesseissaan.

Ydinkirjastot

Tässä jaksossa keskustelemme joistakin ydinkirjastoista, jotka ovat läsnä Android käyttöjärjestelmä.

2) MediaFramework

Android tukee myös natiivisti suosittuja mediakoodekkeja, mikä helpottaa sovelluksella luotuja sovelluksia Android alusta multimediakomponenttien käyttöön/toistamiseen.

3) SQLite

Android on myös SQLite tietokanta joka mahdollistaa sen, että sovelluksilla on erittäin nopea natiivi tietokantatoiminto ilman, että tarvitaan kolmannen osapuolen kirjastoja.

4) Freetype

Android mukana tulee esiasennettu nopea ja joustava fonttimoottori. Tämä antaa sovelluskehittäjille mahdollisuuden muokata sovelluksensa komponentteja ja tarjota runsaan kokemuksen, joka viestii kehittäjän tarkoituksesta.

5) OpenGL

Android mukana tulee myös OpenGL-grafiikkajärjestelmä. Se on C-kirjasto, joka auttaa Android käyttää laitteistokomponentteja 2D- ja 3D-grafiikan reaaliaikaisessa renderöinnissa.

6) SSL

Android mukana tulee myös sisäänrakennettu suojauskerros, joka mahdollistaa suojatun viestinnän sovellusten välillä Android ja muut laitteet, kuten palvelimet, muut mobiililaitteet, reitittimet 6.

7) SGL

Android mukana tulee grafiikkakirjasto, joka on toteutettu matalan tason koodilla, joka renderöi grafiikkaa tehokkaasti Android-alustalle. Se toimii ylemmän tason komponenttien kanssa Android puitteet Android grafiikkaputki.

8) Libc

Ydin Android sisältää C- ja kielellä kirjoitetut kirjastot C++, jotka ovat matalan tason kieliä, jotka on tarkoitettu sulautettuun käyttöön ja jotka auttavat maksimoimaan suorituskyvyn. Libc tarjoaa keinon paljastaa matalan tason järjestelmätoiminnot, kuten säikeet, socketit, IO ja vastaavat näille kirjastoille.

9) Webkit

Tämä on avoimen lähdekoodin selainmoottori, jota käytetään selaimien rakentamisen perustana. Oletusarvo Android Selain ennen versiota 4.4 KitKat käyttää sitä verkkosivujen hahmontamiseen. Sen avulla sovelluskehittäjät voivat renderöidä verkkokomponentteja näkymäjärjestelmässä WebView'n avulla. Näin sovellukset voivat integroida verkkokomponentteja toimintoihinsa.

10) Surface Manager

Pintapäällikkö vastaa levitysnäyttöjen sujuvasta renderöimisestä. Se tekee tämän muodostamalla 2D- ja 3D-grafiikkaa hahmontamista varten. Se mahdollistaa tämän lisäksi tekemällä näytön ulkopuolisen puskuroinnin.

Linux-ydin

Juurikomponentti Android Järjestelmä on Linux-ydin. Se on perusta, joka mahdollistaa kaiken Androidn toiminnallisuutta.

Linux-ydin

Linux-ydin on taistelutestattu ohjelmisto, jota on käytetty kehitystyössä käyttöjärjestelmät monenlaisille laitteille supertietokoneista pieniin vempaimiin. Sillä on rajoitetut prosessointiominaisuudet, kuten pienet verkotetut vempaimet esineiden Internetiin (IoT).

Linux-ydintä voidaan säätää vastaamaan laitteen teknisiä tietoja, jotta valmistajat voivat tehdä sen Android eri ominaisuuksilla varustettuja laitteita vastaamaan käyttökokemusta.

Mitä tulee Android, Ydin vastaa monista perustoiminnoista, mukaan lukien mutta ei rajoittuen näistä:

  1. Laitteistoajurit
  2. Muistinhallinta
  3. Prosessinhallinta

Laajennetaan joitakin toimintoja:

Laiteohjaimet

Linux-ydin sisältää ajurit, joita tarvitaan, jotta käyttöjärjestelmä voi toimia erilaisten laitteistokomponenttien kanssa. Nämä ohjaimet tarjoavat vakiorajapinnan, jonka kanssa eri valmistajilta hankitut laitteistokomponentit voivat toimia.

Näin laitevalmistajat voivat hankkia erilaisia ​​komponentteja, kuten Bluetooth-komponentteja, Wifi-komponentteja, kamerakomponentteja. Niin kauan kuin valmistajat vastaavat Android vakiomääritykset, integrointi on saumatonta.

1) USB-ohjain

Linux tarjoaa myös Android keinolla liittää USB-laitteet. Nykyaikaisissa laitteissa on erilaisia ​​USB-portteja, mukaan lukien USB 2.0 ja uudet USB-versiot, mukaan lukien USB-C. Nämä ohjaimet mahdollistavat USB-portin käytön lataamiseen ja live-tietojen, kuten lokien, siirtämiseen Android laitteita ja olla vuorovaikutuksessa Androidin kanssa tiedostojärjestelmä.

2) Bluetooth-ohjain

Linux-ydin tukee liitäntää Bluetooth-laitteistokomponenttien kanssa. Se tarjoaa tavan lukea ja kirjoittaa tuetuilta Bluetooth-radiotaajuuksilta vastaanotettuja tietoja. Se tarjoaa myös joukon tiloja Android määrittääksesi Bluetoothin.

3) Wifi-ohjain

Linux-ydin tarjoaa ohjaimia WiFi-verkon laitteistokomponenttien integrointiin. Mobiililaitteisiin upotetut WiFi-komponentit mahdollistavat Android laitteita wifi-verkkoihin yhdistämiseksi. Ohjaimen avulla wifi-komponentit voivat lähettää wifi-verkkoja ja luoda hotspotteja.

4) Näytönohjain

Android mahdollistaa käyttöliittymän näytön komponenttien kanssa. Useimmissa laitteissa käyttöliittymäkomponentti on LCD-kosketusnäyttö. Se mahdollistaa pikselien määrittämisen ja piirtämisen.

5) Ääniohjain

Android laitteissa on yleensä laitteistokomponentit äänen tuloa ja ulostuloa varten. Ytimen ääniohjaimet mahdollistavat Android järjestelmä käyttää näistä komponenteista vastaanotettua ääntä ja tuottaa myös äänilähtöä.

6) Power Manager

bridge Android laitteita käytetään, kun ne on irrotettu pistorasiasta. Ne ovat siten riippuvaisia ​​akuista saadakseen virtaa suurelle osalle niiden käytöstä. Linux-ytimen mukana tulee virranhallintajärjestelmä, joka voidaan konfiguroida vastaamaan sitä käyttävien laitteiden tarpeita.

Android Käyttöjärjestelmä käyttää virranhallintaa saadakseen muut laitteen komponentit virran tietoisiksi. Se tekee tämän lähettämällä erilaisia ​​tehoon liittyviä tiloja. Nämä tilat ovat valmiustila, lepotila ja akun varaus vähissä. Päällä Android, virranhallinta on viritetty oletustilaan lepotilaan akun maksimaalisen käyttöiän varmistamiseksi.

Power Manager paljastaa sovelluksille keinot reagoida eri tehotiloihin. Sovellukset voivat myös muuttaa toimintaansa vastaamaan laitteen nykyistä virtatilaa.

Sovellus voi myös pyytää muuttamaan oletusvirtakäytäntöjä. Sovellukset voivat saavuttaa halutut toiminnot, kuten pitää laitteistokomponentit aktiivisina. Esimerkki on näytön pitäminen aktiivisena kirjaa luettaessa, jotta käyttäjä ei keskeydy. Toinen esimerkki on audiokomponenttien pitäminen päällä, kun kuuntelet musiikkia taustalla.

7) Flash-muisti

bridge Android laitteet käyttävät flash-muistia tallennusvälineenä. Flash-muisti on nopea ja vie vähemmän tilaa, joten se sopii erinomaisesti pienille laitteille. Linux-ydin tarjoaa keinon Android laitteita, jotka lukevat ja kirjoittavat flash-muistiin. Se tarjoaa keinon osioida muisti siten, että käyttöjärjestelmä ja muut sovellukset voivat helposti ja tehokkaasti jakaa muistiresurssin.

8) Sideaine

Android isännöi monia sovelluksia ja järjestelmäkomponentteja, jotka kukin toimivat prosesseissaan. Useimmissa tapauksissa nämä prosessit tulisi eristää toisistaan ​​häiriöiden ja tietojen korruption estämiseksi. Kuitenkin on tapauksia, joissa haluamme siirtää tietoja prosessista toiseen.

Linux-ydin mahdollistaa tietojen jakamisen tarjoamalla sidosohjaimet. Binder-ajurit mahdollistavat prosessien välisen tiedonsiirron, IPC. IPC-prosessien avulla voidaan löytää muita prosesseja ja jakaa tietoa.

Muistinhallinta

Toinen Linux-ytimen vastuualue on muistinhallinta. Kun eri sovelluksia suoritetaan, ydin varmistaa, että niiden käyttämä muistitila ei ole ristiriidassa ja ylikirjoita toisiaan.

Se auttaa myös varmistamaan, että kaikki käynnissä olevat sovellukset saavat riittävästi muistia toimiakseen ja varmistavat, ettei yksikään sovellus vie liikaa tilaa.

Prosessinhallinta

Jokainen sovellus sisään Android toimii prosessissa. Ydin vastaa myös prosessien hallinnasta. Tämä tarkoittaa, että se on vastuussa prosessien luomisesta, keskeyttämisestä, pysäyttämisestä, sulkemisesta tai lopettamisesta.

Ydin mahdollistaa erilaisia ​​toimintoja, kuten useiden prosessien ajamisen samanaikaisesti, prosessien välisen viestinnän, prosessien suorittamisen taustalla ja niin edelleen.

Koska jokainen prosessi vaatii oman muistitilansa toimiakseen oikein, ydin varmistaa, että kullekin prosessille varatut muistitilat on suojattu muilta prosesseilta. Se myös varmistaa, että resurssit pitävät RAM prosesseille varatut määrät vapautuvat, kun prosessit suljetaan.

Linux-ydin vastaa myös työn jakamisesta laitteessa oleville prosessoreille. Tämä mahdollistaa useiden ytimien laitteiden suorituskyvyn maksimoimisen, koska eri sovellusten prosessit suoritetaan eri ytimessä.

Linux-ydin tekee enemmän tehtäviä konepellin alla, mukaan lukien turvallisuuden varmistaminen.

Yhteenveto

  • Android arkkitehtuuri on järjestetty kerroksiin.
  • Jokainen kerros ratkaisee ainutlaatuisen joukon ongelmia.
  • Loppukäyttäjät ovat vuorovaikutuksessa sovellustason sovellusten kanssa
  • Sovelluskehittäjät kehittävät sovelluksia käytettäviksi sovellustasolla. He tekevät sen käyttämällä sovelluskehyksen tarjoamia työkaluja ja abstraktioita.
  • Android Framework-kerros yksinkertaistaa pääsyä matalan tason komponentteihin luomalla API:n alkuperäiskirjastojen päälle.
  • Android Runtime ja Core-Libraries käyttävät matalan tason kieliä yhdessä mobiililaitteiden optimoinnin kanssa. Tämä varmistaa, että sovelluskehittäjien kirjoittama koodi toimii sujuvasti huolimatta Android laitteen rajoitukset.
  • Alueen pohjalla Android ohjelmistopino on Linux-ydin. Se on liitäntä yleisten laitteistokomponenttien kanssa Android laitteita.