Android Architecture

Android operativsystem er en stabel av programvarekomponenter som er grovt sett deles inn i fem seksjoner og fire hoved lag som vist nedenfor i arkitekturen diagrammet.

Linux kernel

På bunnen av lagene er Linux - Linux 3.6 med ca 115 lapper. Dette gir et abstraksjonsnivå mellom maskinvareenhet, og det inneholder alle de essensielle maskinvaredrivere som kamera, tastatur, skjerm etc. Også håndterer kjernen alle de tingene som Linux er virkelig god til for eksempel nettverk og et stort utvalg av enhetsdrivere , som tar smerten ut av tilkopling til ekstern maskinvare.

Libraries

På toppen av Linux-kjernen er det et sett med biblioteker inkludert open-source nettleser motoren WebKit, kjente bibliotek libc, SQLite database som er en nyttig oppbevaringssted for lagring og deling av applikasjonsdata, til bibliotekene spille og ta opp lyd og video, SSL bibliotekene ansvarlig for internettsikkerhet etc.

Android biblioteker

Denne kategorien omfatter de Java-baserte biblioteker som er spesifikke for Android utvikling. Eksempler på bibliotekene i denne kategorien omfatter søknad ramme bibliotekene i tillegg til de som lette brukergrensesnitt bygning, grafikk tegning og databasetilgang. En oppsummering av noen viktige kjerne Android biblioteker tilgjengelig for Android-utvikler er som følger −

android.app
− Gir tilgang til programmet modell og er hjørnesteinen i alle Android-programmer

android.content Anmeldelser og minus.; Forenkler innhold tilgang, publisering og meldinger mellom programmer og programkomponenter

android.database Anmeldelser og minus.; Brukes til å få tilgang til data publisert av innholdsleverandører og inkluderer SQLite database management klasser

android.opengl Anmeldelser og minus.; En Java-grensesnitt til OpenGL ES 3D-grafikkgjengivelse API

android.os Anmeldelser og minus.; Gir applikasjoner tilgang til standard operativsystem tjenester inkludert meldinger, systemtjenester og inter-prosess kommunikasjon

android.text Anmeldelser og minus.; Brukes til å gjengi og manipulere tekst på en skjermenhet

android.view Anmeldelser og minus.; De grunnleggende byggesteinene i søknaden brukergrensesnitt

android.widget Anmeldelser og minus.; En rik samling av pre-bygget i brukergrensesnittet komponenter som knapper, etiketter, listevisninger, layout ledere, radioknapper osv

android.webkit
− Et sett av klasser ment å tillate web-leser evner å bygges inn søknader.

Etter å ha dekket de Java-baserte kjerne bibliotekene i Android runtime, er det nå på tide å vende vår oppmerksomhet til C /C ++ basert bibliotekene i dette laget av Android software stack.

Android Runtime

Dette er den tredje delen av arkitekturen og tilgjengelig på det andre laget fra bunnen. Denne delen inneholder en nøkkelkomponent kalt Dalvik Virtual Machine
som er en slags Java Virtual Machine spesielt utviklet og optimalisert for Android.

Dalvik VM gjør bruk av Linux-kjernen funksjoner som minnehåndtering og multi-threading, som er iboende i Java-språket. Dalvik VM gjør at alle Android-applikasjonen til å kjøre i sin egen prosess, med sin egen instans av Dalvik Virtual Machine.

Android runtime gir også et sett med kjerne biblioteker som gjør Android programutviklere å skrive Android-applikasjoner ved hjelp standard Java programmeringsspråk.

Application Framework

Application Framework laget gir mange høyere nivå tjenester til programmer i form av Java-klasser. Programutviklere har lov til å benytte seg av disse tjenestene i sine applikasjoner

Android rammeverket inkluderer følgende nøkkeltjenester og minus;.

  • Aktivitetsbehandling
    − Styrer alle aspekter av livssyklusen og aktivitet stack

    Innholdsleverandører Anmeldelser og minus.; Tillater applikasjoner å publisere og dele data med andre programmer

    Resource Manager Anmeldelser og minus.; Gir tilgang til ikke-kode innebygd ressurser som strenger, fargeinnstillinger og brukergrensesnitt oppsett

    Varsler manager Anmeldelser og minus.; Tillater applikasjoner å vise varsler og meldinger til brukeren

    Vis System Anmeldelser og minus.; En utvidbar sett synspunkter som brukes til å opprette program brukergrensesnitt.

    Programmer

    Du vil finne alle Android-applikasjon på det øverste laget. Du vil skrive søknaden skal bli installert på dette laget bare. Eksempler på slike programmer er Kontakt Bøker, Browser, spill osv