Introduksjon til Android Development

Mobiletuts + vil dekke alle store mobile plattformer - iPhone, Windows, Android og Blackberry. I dag tar vi en titt på Android-utviklingen: Forklarer hvorfor folk har valgt å jobbe med Android og gi oversikt over Eclipse IDE og dets Java, DDMS og debugging-perspektiver. Til slutt lærer du hvordan du kommer i gang med å lage din første Android-app!

Android 101 opplæringsprogrammer:

  • Lær Java for Android Development: Introduksjon til Java
  • Lær Java for Android Development: Java Syntax
  • Lær Java for Android Development: Kontroller objekttype med Instanceof
  • Lær Java for Android Development: Arbeide med Arrays
  • Lær Java for Android Development: Refleksjon Basics
  • Introduksjon til Android SDK Development
  • Begynnende Android: Komme i gang med FortuneCrunch

Hva er Android?

Android er et operativsystem med åpen kildekode som kombinerer og bygger på deler av mange forskjellige open source-prosjekter. Hva betyr dette for deg som utvikler? Du har tilgang til kildekoden til plattformen som kjører på telefonen. Dette kan hjelpe deg med å forstå hvordan grensesnittkontroller og de forskjellige andre delene fungerer. Hvis du finner en feil, kan du også sende inn en oppdatering for problemet, men dette er en mer avansert praksis. Google har også trukket sammen en stor gruppe selskaper (kalt Open Handset Alliance) som både bidrar til og bruker Android OS i maskinvareenhetene sine. Dette betyr at det er industriell støtte til Googles OS, lovende bred adopsjon på tvers av kjente leverandører.

Hvorfor Android?

Det er mange fordeler med å utvikle for Android-plattformen:

  • Null oppstartskostnader for å begynne utvikling. Utviklingsverktøyene for plattformen er gratis å laste ned, og Google belaster bare en liten avgift for å distribuere applikasjoner på Android Market.
  • Frihet til å innovere. Android OS er en åpen kildekode-plattform basert på Linux-kjernen og flere åpne kildebiblioteker. I tillegg til å bygge applikasjoner for å kjøre på Android-enheter, er utviklere fri til å bidra til eller utvide plattformen også.
  • Frihet til å samarbeide. Android-utviklere er ikke pålagt å signere en NDA og oppfordres til å samarbeide og dele kildekoden med hverandre. Ifølge en undersøkelse av Black Duck Software, vokste antallet mobilklipper og biblioteker i åpen kildekode med en hastighet på 168% fra 2008 til 2009, raskere på Android enn noen annen plattform. Dette betyr mer kode som du kan bruke på nytt i dine egne prosjekter for å bringe dem til markedet mye raskere.
  • Åpne distribusjonsmodell. Det er svært få restriksjoner på innholdet eller funksjonaliteten som er tillatt i Googles Android Market, og utviklere kan også distribuere sine applikasjoner via andre distribusjonskanaler også.
  • Multiplattformstøtte. Det finnes et bredt utvalg av maskinvareenheter drevet av Android OS, inkludert mange forskjellige telefoner og nettbrett datamaskiner. Utvikling for plattformen kan forekomme på Windows, Mac OS eller Linux.
  • Multi-carrier støtte. Et stort antall teleselskaper tilbyr for øyeblikket Android-drevne telefoner.

Forutsetninger før du fortsetter med denne artikkelen, er:

  • Du må laste ned og installere Eclipse IDE. Velg "Eclipse IDE for Java-utviklere" alternativ.
  • Du må laste ned og installere Android SDK.
  • Installer Android Development Tools (ADT) Eclipse plugin.

Eclipse IDE

Eclipse er et komplekst, flerspråklig og utvidbart integrert utviklingsmiljø (IDE). Læringskurven kan være bratt, men kraften i miljøet kan øke effektiviteten betydelig.

Etter å ha åpnet Eclipse for første gang, velg et arbeidsområde for å lagre prosjektet ditt innenfor. Du vil se en introduksjonsskjerm med flere ikoner. Velg "gå til arbeidsbenk" alternativet, og du vil bli presentert med standard prosjektskjerm.

Forutsatt at du allerede har installert Eclipse ADT-pluginet, må du konfigurere Eclipse for Android-utvikling ved å manuelt sette filepathen for Android SDK. For å gjøre dette, velg Eclipse> Preferanser fra hovedverktøylinjen, og velg deretter Android fra dialogboksen som vises. Oppdater "SDK Location" -alternativet for å peke på katalogen der du installerte SDK. Du bør nå ha IDE konfigurert for Android-utvikling.

Det er viktig å merke seg at Eclipse bruker noe som kalles "perspektiver" for å gruppere vanlige oppgaver. Bytte perspektiver vil bytte ut deler av menyen og verktøylinjer, og vise og skjule visninger som er relatert til dem. Perspektiver kan åpnes ved å klikke på Åpne perspektiv eller ved å velge Vindu> Åpen perspektiv. Noen perspektiver som du vil bruke ofte, inkluderer Java, Debugging og DDMS.

Java-perspektivet

Java-perspektivet er standardperspektivet i Eclipse, og det er der du sannsynligvis vil tilbringe mesteparten av tiden din.

Blant de viktigste synspunktene i dette perspektivet er Package Explorer-visningen, som standard plassert i venstre kolonne på arbeidsbenken. Denne visningen er en oversikt over hele prosjektet. Det viser også tilstandene til individuelle filer med hensyn til kompilere problemer, versjonskontroll, osv.

En annen viktig visning i Java-perspektivet er Problemvisningen, som standard plassert i det nederste senterpanelet på arbeidsbenken. Her finner du kompilere advarsler og feil som er oppført. Du kan dobbeltklikke på et element som skal tas direkte til feilen i Java- eller XML-filen.

DDMS Perspektivet

DDMS er kort for Dalvik Debug Monitor Server, som kommuniserer med lavt nivåtjenester på en enhet eller emulator. Bytt til DDMS-perspektivet nå ved å velge Vindu> Åpen perspektiv> DDMS.

Enhetsvisningen, plassert i den venstre kolonnen på arbeidsbenken, er hvor du vil se eventuelle Android-enheter som er tilgjengelige for datamaskinen din. Dette inkluderer både telefoner som er koblet til maskinen og kjøreremulatorer. Under hver enhet ser du alle løpende prosesser. Det er verktøylinjeknapper på visningen for å starte debuggeren på en prosess, få informasjon om hauger og tråder, stoppe prosesser og ta skjermbilder.

Emulatorstyringsvisningen, også i venstre kolonne, lar deg gjøre følgende:

  • Angi status for taleforbindelsen.
  • Angi status, hastighet og ventetid for datatilkoblingen.
  • Simulere et innkommende anrop eller SMS fra et medfølgende telefonnummer.
  • Gi et simulert sett med poeng for GPS via et breddegrad / lengdepunktspunkt, eller GPX / KML-fil.
  • Ved hjelp av Filutforsker-visningen, tilgjengelig som en fan øverst til høyre i senterkolonnen, kan du bla gjennom filsystemet til en enhet. For en emulator eller en rotfestet telefon har du tilgang til private kataloger / data og / system. For ikke-roterte telefoner har du bare tilgang til / sdcard.

    Debugging Perspective

    Feilsøkingsperspektivet vil gi grundig informasjon om dine applikasjoner. Bytt til debugging-perspektivet nå ved å velge Vindu> Åpne perspektiv> Feilsøking.

    Debug-visningen viser deg de løpende appene som blir analysert, og når stoppet på et bruddpunkt eller unntak, kalles også stablene for applikasjonen. Variabler-visningen viser innholdet i eventuelle lokale variabler ved det nåværende brytepunktet.

    LogCat-visning i nedre høyre hjørne viser all loggutgang ved hjelp av android.util.Log-klassen. Du kan filtrere basert på koder eller forskjellige loggnivåer som feilsøking, informasjon, feil, etc..

    Ditt første søknad

    For å begynne å lage et Android-program, bytt tilbake til Java-perspektivet og velg Fil> Meny> Android Prosjekt. Hvis du gjør det, starter du programopprettingsveiviseren, og du blir bedt om å skrive inn meta-informasjon om prosjektet ditt i tre kategorier: Innhold, Bygg mål og Egenskaper.

    Navngi programmet "DemoApp" og la Innholdsavsnittet gå til alle standardverdiene.

    Bygg-mål-delen definerer versjonen av SDK som vår demo-app vil bli kompilert mot. For denne opplæringen, velg API nivå 4 (Android 1.6) fordi den vil kjøre på et bredt spekter av maskinvare, og API-en gir oss mulighet til å håndtere forskjellige skjermoppløsninger.

    Neste er Egenskaper-delen, som gir veiviseren mer informasjon om hvilke klasser som skal genereres og hva de skal navngis. Programnavn-innstillingen vises under programikonet, samt programmets tittellinje når det startes. Pakkenavnet gir grunnleggende Java-navneområde for dine genererte klasser. For å opprette en standardaktivitet, kontroller at Opprett aktivitet er merket og gi et aktivitetsnavn. Det siste alternativet er Min SDK-versjonen. Denne verdien bestemmer hvilken versjon av Android som skal være på en telefon for at dette programmet skal kunne installeres. Dette settes vanligvis til samme API-nivå som du valgte under Build Target.

    Når du har angitt all denne informasjonen og klikker Fullfør, vil du ha et grunnleggende "Hello World" -program som er nesten klar til å kjøre på en telefon eller en emulator. Før vi konfigurerer en emulator og kjører programmet, ta noen minutter å undersøke generert standardmallinnhold:

    AndroidManifest.xml-filen

    AndroidManifest.xml-filen gir metadata om programmet ditt at Android OS må kjøre appen riktig. Navnet på programmet, som brukes til både appikonet og aktivitetslistelinjen, og appikonet er definert under Programmets attributter. Du vil merke at feltet Navn ikke inneholder navneteksten, men "@ streng / app_navn" i stedet. Dette er en strengreferanse og kan brukes når som helst en streng er forventet. Den faktiske strengteksten blir deretter definert i en av XML-filene som finnes under res / verdier-mappen. App opprettelsesveiviseren genererte en fil der kalt strings.xml.

    Programsnodes-delen er der alle aktivitetene er definert for søknaden. Appens eneste aktivitet kalles MainActivity og er oppført her.

    Den / res-mappen

    Res-mappen er der de fleste programressurser er lagret. Hovedinnholdskategoriene inkluderer trekk, oppsett og verdier.

    Drawables er vanligvis bitmaps bilder i form av. PNGs. Drawables kan også være ni-lappbilder, som er .PNGs med spesielle data i bildet som hjelper Android til å gjøre en bedre jobb når du strekker bildet. Nine-patch-bilder kan opprettes med ni patch-verktøyene i SDK, eller med et bildeopprettingsverktøy som Photoshop.

    Layout er hvor du definerer skjermbildene dine. Hvis du vil vise XML-en for layoutet på skjermen, klikker du på main.xml-fanen.

    Verdier er der du definerer (i XML) globalt brukte farger, dimensjoner, strenger og stiler. Filen strings.xml lar deg legge til og redigere verdier for prosjektet ditt.

    / / Mappen

    Dette er hvor kode genereres for alle ressursene som er definert i res-mappen din. Slik får du tilgang til oppsett og kontroller som er definert i koden din.

    Mappen / src

    Src-mappen inneholder all din egendefinerte kildekode, gruppert i pakker. Pakker er bare der for å hjelpe kategorisere kildekoden til logiske (og håndterbare) grupper.

    Mappen / eiendeler

    Aktivitetsmappen er et sted å lagre diverse filer du trenger for å få tilgang til koden din som rå data. Alle filer i resmappen har metoder for å laste de spesifikke typene, mens den eneste måten å laste noe fra eiendeler er å programmere åpne den som en fil.

    Opprette en Android Virtual Device

    Virtuelle enheter gjør det mulig å kjøre og teste koden din uten å eie en faktisk Android-telefon. Siden det er flere forskjellige versjoner av operativsystemet du kan målrette, må du til slutt opprette flere versjoner av virtuelle enheter, men for nå skal vi opprette en som bruker API-nivå 4 (1.6). Du kan gjøre dette via AVD Manager. Fra hovedverktøylinjen, velg Vindu> Android SDK og AVD Manager.

    Når du har åpnet lederen og ser på listen over virtuelle enheter, klikker du på "Ny" -knappen for å opprette din virtuelle enhet.

    Jeg heter generelt mine virtuelle enheter ved hjelp av OS-versjonsnummeret sammen med den forhåndsinnstilte oppløsningen jeg velger, så i dette tilfellet, 1.6-hvga. Det er godt å også lage et SD-kort for emulatoren som jeg vanligvis setter til 16 MB, med mindre jeg vet at jeg trenger mer plass. Klikk på Opprett AVD-knappen, og du vil se enheten din oppført.

    Gå videre og start den virtuelle enheten ved å velge den og klikk på "Start" -knappen.

    Kjører og feilsøker din første app

    Eclipse, sammen med Android Developer Tools, tilbyr et godt miljø for feilsøkingsprogrammer. For debugging, vil du bruke både Debugging og DDMS perspektiver. Feilsøkingsperspektivet vil bli brukt til å gå gjennom kode, vise verdier av variabler og sette brytpunkter. DDMS-perspektivet vil bli brukt til å kontrollere emulatoren, vise tråder og vise minnetildeling.

    Siden dette er vår første gang å kjøre programmet, må vi opprette noe som kalles en løpekonfigurasjon. Kjør konfigurasjoner er de innstillingene Eclipse vil bruke til å kjøre (eller feilsøke) søknaden din. Hver applikasjon kan ha flere konfigurasjoner. Man kan være opprettet for alltid å distribuere og kjøre på en vedlagt telefon, og en annen kan være oppsett for å bare kjøre i en bestemt emulator-forekomst. Koble fra telefonen din nå, hvis du har tilfeldigvis lagt den til maskinen, slik at du kan se at appen kjører på emulatoren først.

    For å opprette løpekonfigurasjonen velger du DemoApp i Package Explorer, og velg deretter Kjør> Kjør fra hovedmenyen. I den neste dialogboksen velger du Android-applikasjon og klikker OK. Emulatoren som vi opprettet tidligere burde lansere. Når emulatoren først starter, kan den vises med låseskjermen; Bare klikk på menyen for å bli tatt til din nye app. Du bør nå se teksten "Hello World" på skjermen!

    Vårt neste skritt vil være å sette et brytepunkt. Åpne MainActivity.java-filen ved å dobbeltklikke på den i pakken Utforsker. Den ligger under / src> com.demo.demoapp. Deretter på linjen som inneholder:

"Super.onCreate (savedInstanceState)"

dobbeltklikk i den grå kolonnen til venstre for linjen (der du ser den blå sirkelen på skjermbildet nedenfor). Hvis du var vellykket, skulle det nå være en blå sirkel som angir brytepunktet.

Bytt nå til debugging-perspektivet ved å velge Vindu> Åpne perspektiv> Feilsøking . For å feilsøke programmet, velg Kjør> Feilsøking.

I debug-visningen bør du se en liste over elementer under DalvikVM / Tråd. Dette er anropsstakken siden vi nå er stoppet ved pausepunktet vi satt tidligere. Variablene viser alle lokale variabler ved det nåværende brytpunktet. Du kan utvide elementet "dette" for å se alle verdiene i vår MainActivity-forekomst.

Endelig vil LogCat vise all logginformasjon som kommer fra emulatoren.

For å fortsette å kjøre appen kan du bruke verktøylinjen på Debug-visningen (som vist på skjermbildet ovenfor), eller velg de samme handlingene fra løpemenyen. Velge Kjør> Fortsett å la appen fortsette å kjøre.

Konklusjon

Denne opplæringen tok deg gjennom de ulike delene av Eclipse og ADT som du trenger å være kjent med for å begynne Android-utvikling. Selv om vi ikke dekker detaljene i søknadskilden, er det viktig å starte med en sterk forståelse av verktøyene du vil bruke hver dag under utviklingen. I kommende artikler vil vi fortsette å grave dypere inn i å skrive gradvis komplekse applikasjoner og skape et overbevisende brukergrensesnitt.

Relaterte opplæringsprogrammer:

  • Lær Java for Android Development: Introduksjon til Java
  • Lær Java for Android Development: Java Syntax
  • Begynnende Android: Komme i gang med FortuneCrunch
  • Vanlige Android Virtual Device Configurations
  • Starte Maps In-App
  • Aktivere brukere til å sende e-post i app
  • Bruke varsler, skåler og varsler
  • Opprette enkle brukerformularer