Din første Android app
23. juni 2011, skrevet af Adrian Skumsrud
 

Bytelab

Det er ingenting der stopper dig fra at gå i gang med at udvikle apps til Android. Udviklingsværktøjerne er gratis og enkle at finde. Det eneste der er vigtig er at gøre installationerne i korrekt rækkefølge og det er derfor vi har skrevet dette blogindlæg, for at hjælpe dig med rækkefølgen. Instruktionerne er et slags sammendrag af instruktionerne fra Google der ligger spredt over mange forskellige sider og guider.

Android

1. Klargøring

Det første du må gøre er at klargøre din computer for App udvikling. Da behøver du først og fremmest at downloade den nyeste JDK (Java development kit). Den finder du hos Oracle. Klikk download under JDK og installer når den en færdig downloadet.

2. Udviklingsverktøj

Du kan i princippet skrive Android apps i et hvilket som helst værktøj, men Google anbefaler Eclipse. Eclipse er et open source udviklingsplatform og kan downloades gratis. Her skal du vælge Eclipse Classic og laste ned versionen til dit operativsystem, fx Windows 64 bit. Eclipse installeres ved at pakke ud .zip filen du downloadet på det sted du ønsker at programmet skal ligge. Eclipse har ingen installationsvejledning eller program du skal igennem.

3. Android SDK

Download Android SDK (Software development kit) til den platform du kører på din computer fra developer.android.com/sdk/ og gem den et sted du finder den igen. For Windows anbefales det at bruge installer downloaden (.exe) fil. Denne skal blot køres når den er lastet ned og hvis JDK og Eclipse er installeret korrekt får du ingen problemer her. Husk at notere ned standardplaceringen hvor SDK Tools bliver installeret, den har du brug for senere.

4. Android Developer Tools

Når både Eclipse og Android SDK er installeret er du klar til at downloade og installere Android Developer Tools (ADT). Dette er et plugin til Eclipse som tilpasser Eclipse til Android udvikling. Det indeholder blandt andet testværktøj og mulighed for at eksportere din App som en samlet pakke direkte til Android Market.

For at installere ADT skal du starte Eclipse ved at køre eclipse.exe fra installationsfolderen. Inde i Eclipse gør du følgende:

a. Vælg Help > Install new software…

b. Klikk Add øverst i højre hjørne

c. I Add Repository dialogboksen som kommer op skriver du "ADT Plugin" som navn og i Location skriver du:
https://dl-ssl.google.com/android/eclipse/

d. Klikk OK (Hvis du får problemer her, prøv at skrive http: i stedet for https: i Location)

e. Kryds af i boksen ved Developer Tools og klikk Next

f. Du får nu se en liste over de værktøj der bliver downloadet, klikk Next

g. Les og accepter licensen og klikk Finish

h. Genstart Eclipse

 

Herefter skal ADT konfigureres til at pege på din Android SDK fra tidligere:

a. Når du har genstartet Eclipse vælger du Window > Preferences

b. Vælg Android fra panelet til venstre (Her bliver du måske spurgt om du vil sende Usage statistict til Google. Gør dit valgt og klikk Proceed)

c. Klikk Browse… ved SDK Location og find frem til hvor du installerede SDK tidligere

d. Klikk Apply, derefter OK

5. Komponenter

Alle værktøj er nu installeret og du kan lægge til de platforme og komponenter du ønsker at benytte. Dette gøres ved at du inde i Eclipse vælger Window > Android SDK and AVD Manager. Klikk på Available Packages og vælg at installere alle sammen (så er du sikker på at du kan bruge Google sin API til fx Google Maps i din App og at du kan udvikle apps til alle versioner af Android.)

Når alt dette er installeret er du klar til at gå i gang med at udvikle din første Android app!

 

6. Android Virtual Device

Når du har bestemt dig for hvilken version af Android du vil udvikle din app til skal du oprette en Android Emulator du kan køre app'en på, dette kaldes en Android Virtual Device (AVD).

Tips: Android 2.2 og 2.3 er til de nyeste telefonerne, Android 3.1 er for tablets.

a. I Eclipse vælger du Window > Android SDK and AVD Manager

b. Vælg Virtual Devices i panelet til vænstre

c. Klikk New for at få op dialogvinduet for Create New AVD

d. Giv dit test device et navn, fx "min_avd"

e. Vælg et target, dvs hvilken platform du ønsker at dit test device skal køre, fx 2.2. Du kan se bort i fra de andre felter i denne omgang.

f. Klikk Create AVD

 

Tips: Hvis du har en Android telefon kan du selvsagt bruge denne til at teste app'en din på. Du kan læse mere om hvordan du går frem på developer.android.com.

 

7. Nyt projekt

Neste steg er at oprette et nyt Android Projekt for din app.

a. I Eclipse vælger du File > New > Project

b. Hvis ADT er installeret korrekt har du en mappe der hedder Android. Under denne skal du vælge Android Project og klikke Next

c. Derefter skal du fylde ind detaljer om projektet:

i. Project name: HelloBytelab (Dette er navnet på projektet i Eclipse og mappen der projektfilene ligger)

ii. Application name: Hello, Bytelab (Dette er navnet på selve app'en som vil vises til brugerne)

iii. Package name: com.bytelab.hellobytelab (dit namespace, minder meget om en baglæns web adresse med navnet på appen til sidst. Package name skal ALLTID være unikt for hver app.)

iv. Create Activity: HelloBytelab (Dette er navnet på den første Activity i projektet, vi kommer tilbage til hvad en Activity er)

d. Klikk Finish

 

8. Kode

Android projektet dit er nu klart og du kan finde det i Package Explorer til venstre. Find frem til HelloBytelab.java under HelloBytelab > src > com.bytelab.hellobytelab og åbne den.

Koden vil se omtrent sådan ud:


package com.bytelab.hellobytelab;

 

import android.app.Activity;

import android.os.Bundle;

 

public class HelloBytelab extends Activity {

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView (R.layout.main);

}

}

Som du ser er HelloBytelab klassen baseret på Activity klassen. En Activity kan ses på som en bestemt skærm og din app vil typisk have en egen Activity for hver funktion der har sit eget skærmbillede. Brugeren bliver vist og interagerer med en Activity om gangen. onCreate() metoden kaldes når Activity'en starter og det er herunder du foretager all initialisering og opsæt af brugergrænsesnit.

Et Android brugergrænsesnit er sat sammen af forskellige objekter der kaldes Views. Et View er et element i brugerfladen som fx en knap, et billede eller en tekst. Alle disse er underklasser til View klassen, og tekst behandles af TextView som vi skal forsøge at bruge i koden.

Forsøg at ændre koden så den ser sådan ud:


package com.bytelab.hellobytelab;

 

import android.app.Activity;

import android.os.Bundle;

import android.widget.TextView;

 

public class HelloBytelab extends Activity {

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

TextView tv = new TextView(this);

tv.setText("Hello, Bytelab");

setContentView(tv);

}

}


Siden vi ønsker at benytte et TextView som er et standardelement skal vi importere dette øverst i koden. Dette er ofte lettere at gøre efter at du har skrevet koden, og Eclipse giver dig god hjælp til at importere de nødvendige ting. Du kan enten holde musen over et element med gul streg under og vælge import … det element du behøver, eller du kan trykke Ctrl-Shift-O for at importere alle nødvendige packages der mangler for koden din automatisk.

Længer ned i koden har vi oprettet et TextView vi har kaldet tv og sagt at det skal være et nytt TextView i denne Activity. I neste linje angiver vi teksten der skal vises ved hjælp af setText() metoden. Til sidst siger vi at Indholdet der bliver vist i Activity'en skal være vårt nye TextView.

 

9. Testing

Nå har du i princippet en Android app der kan køres, og den skal selvsagt testes. Siden vi allerede har oprettet en AVD til at teste på skal du blot vælge Run > Run i Eclipse og vælge Android Application. Eclipse vil så automatisk starte emulatoren som app'en skal køres på. Vær opmærksom på at denne ofte er meget langsom til at starte op, og tilsyneladende fryser et par ganger i opstarten, men det er bare at være tålmodig.

Tips: Når appen testes eller køres på en rigtig telefon vil den reagere og arbejde meget hurtigere end i emulatoren.

Vinduet du får op vil være noget der ligner skærmen på en Android telefon og du kan klikke på den med musen som du ville gjort med fingeren på en rigtig telefon. Appen vil starte automatisk, men du skal måske låse op telefonen som du ville gjort med en rigtig telefon der havde tastaturlås.

Tips: Når du kommer videre i udviklingen og vil teste nye ting lønner det sig at beholde emulatoren åben. Når du så vælger Run vil den nyeste version af app'en overskrive den versionen der ligger på telefonen. Dette går meget hurtig i forhold til at starte op emulatoren mange gange.

Denne enkle app viser kun den tekst vi skrev ind, men du ved du hvordan du starter op et projekt og tester appen din og er klar til at gå i gang med udviklingen af alle de spændende apps du har ideer til. Hvis du ønsker at lege lidt mere med denne app kan du se denne videreudvikling af eksempelet.

10. Hvad sker videre?

For at komme videre vil developer.android.com være din vigtigste ressource for hvordan du løser tekniske problemstillinger. Meget hjælp kan også findes igennem et søg på Google, eller eventuelt at søge efter Android tutorials på YouTube. Når app'en din er færdig udviklet og klar til at sælges kan du læse om hvordan du går frem for publicering til Android Market her.

Hvis du alligevel hellere vil have professionel hjælp til udviklingen af din næste app, så kontakt os for en uforpligtende snak omkring projektet.