Tillbaka till lektionslistan

Mobila applikationer med Android: Lektion 4

Idag: Android-SDK:n och Android Studio
  • Installera Java
  • Installera Android Studio
  • Att använda Android Studio
  • Några problem man kan råka ut för
  • Skapa ett projekt
  • Android-emulatorn
  • Riktiga enheter (telefoner, läsplattor, smartklockor, smart-TV)

Klicka på startknappen i den lilla mediaspelaren ovan för att lyssna på lektionen. (Man kan behöva vänta en stund på att ljudfilen laddas ner.) Om mediaspelaren inte syns, eller om det inte fungerar av något annat skäl, kan man klicka här för att ladda ner mp3-filen (ca 33 minuter, ca 16 megabyte). Beroende på hur webbläsaren är konfigurerad kan det kräva ett separat mp3-spelarprogram av något slag.

Android utvecklas snabbt, och den här lektionen beskriver hur saker fungerade när jag gjorde den.

För mer information, och aktuella instruktioner, bör man läsa på Googles Android-webbplats developer.android.com, till exempel med början på Installing the Android SDK.

(Det finns också en äldre version av den här lektionen. Den handlar om Eclipse, den utvecklingsmiljö som Google tidigare rekommenderade för Android.)

Bild 1: En mycket enkel app i en emulator på en Windows-dator

Emulatorn med hello world i Windows

Bild 2: En mycket enkel app i en emulator på en Linux-dator

Emulatorn med hello world i Linux

Bild 3: En mycket enkel app i en Nexus 7

Hello world på en riktig enhet

"Bild" 4: Provkörda system

Detta är provat i:
  • 64-bitars Windows 10 (inuti VirtualBox)
  • 64-bitars Ubuntu 14.04

Bild 5: Följ instruktionerna

SDK-fliken på Googles Android-utvecklarwebbplats: http://developer.android.com/sdk

SDK-fliken på developer.android.com

Bild 6: Ladda hem Java-JDK:n och Android Studio

Nedladdade filer

Både Java och Android kommer ständigt i nya versioner, och den här lektionen beskriver hur saker fungerade när jag gjorde den.

För mer information, och aktuella instruktioner, bör man läsa på Googles Android-webbplats developer.android.com, till exempel med början på Installing the Android SDK.

"Bild" 7: Ladda hem och installera Java-JDK:n

  • Följ länken från developer.android.com
  • JDK (även kallad SDK), inte JRE
  • Windows: jdk-8u60-windows-x64.exe
  • Linux: jdk-8u60-linux-x64.tar.gz

"Bild" 8: Ladda hem och installera Android Studio

  • Följ instruktionerna på developer.android.com
  • Windows: android-studio-bundle-141.2178183-windows.zip
  • Linux: android-studio-ide-141.2178183-linux.zip
  • Innehåller egentligen två saker: Android SDK och utvecklingsmiljön Android Studio

Bild 9: Under installationen

En dialogruta under installationen

Bild 10: Windows-brandväggen

En dialogruta under installationen

Bild 11: Välkommen till Android Studio

Startfönstret i Android Studio

Bild 12: Skapa ett nytt projekt

Skapa ett nytt projekt

Bild 13: Skapa ett nytt projekt

Skapa ett nytt projekt

Bild 14: Android Studio-fönstret

Android Studio

Bild 15: Java-programkod i Android Studio

Android Studio

Bild 16: Layout i Android Studio

Android Studio

Bild 17: Designverktyget

Designverktyget

Bild 18: Starta SDK Manager

Android Studio

Bild 19: SDK Manager

SKD Manager

Bild 20: Starta AVD Manager

Android Studio

Bild 21: AVD Manager

AVD Manager

Bild 22: Starta appen

Starta appen

Bild 23: Starta en app och välj enhet

Välj en enhet

"Bild" 24: Några problem som kan uppstå

  • x86-emulatorn går inte att starta (se nedan)
  • USB-drivrutiner för riktiga enheter
  • Man kan behöva ändra sökvägen till Java-installationen i inställningarna i Android Studio
  • Man kan behöva ändra sökvägen till Android-SDK:n i projektinställningarna
  • Användaren som kör måste ha en egen, ägd installation av Android-SDK:n
  • För stor emulator, så fönstret inte får plats på skärmen

Men Google har svar på allt!

Bild 25: x86-emulatorn går inte att starta (i Linux)

This user doesn't have permission to use KVM (/dev/kvm)

Lösning: sudo chmod a+rw /dev/kvm

Bild 26 : x86-emulatorn går inte att starta (i Linux)

KVM is not installed in this machine (/dev/kvm is missing)

Lösning: Byt dator!

Bild 27: x86-emulatorn går inte att starta (i Windows)

Felmeddelande om x86-emulatorn

Ett tillägg 16 mars 2016:
Enligt rapporter jag fått kan även antivirusprogram som Avast orsaka att emulatorn inte går att köra.

Bild 28: Ladda ner och installera HAXM i Android-SDK:n

Följ Android-utvecklarwebbplatsen, http://developer.android.com/tools/devices/emulator.html:

Installera HAXM

Bild 29: Installera HAXM

Gå till katalogen C:\Users\Padrone\AppData\Local\Android\sdk\extras\intel\Hardware_Accelerated_Execution_Manager och kör programmet intelhaxm-android.exe:

Installera HAXM

Bild 30: Eller skapa en emulator med ARM-processor i stället

Skapa emulator

Bild 31: Ladda ner en ARM-image

ARM-image

Bild 32: Inställningar för emulatorn

Skapa emulator

Bild 33: Fler inställningar för emulatorn

Skapa emulator

Bild 34: Ett problem med att starta ARM-emulatorn

Skapa emulator

Lösning: Starta en app i Android Studio och starta emulatorn genom att välja "Launch emulator"

"Bild" 35: Ett tips

I moderna program på moderna datorer ska det förstås fungera utan problem att använda svenska tecken som ÅÄÖ. Tiden när man behövde skriva AAO eller ][\ i stället för ÅÄÖ är längesen förbi. Sägs det. Men erfarenheten lär oss att även om det ska fungera med ÅÄÖ i olika namn, till exempel namnet på en Android-app som vi skapar, så är det tyvärr inte alltid det verkligen gör det. Plötsligt får man något konstigt fel som efter flera timmars letande visar sig bero på att man hade ett svenskt tecken i ett filnamn. Så det kan vara en god idé att undvika svenska tecken, åtminstone i namn som slutanvändarna inte ser. Samma sak gäller mellanslag. En tidigare version av Android-SDK:n fungerade inte om man installerade den i en katalog där det fanns mellanslag i sökvägen, som till exempel under Program Files. Så ett tips är att undvika både mellanslag och ÅÄÖ, i alla fall i namn som slutanvändaren inte ser, och alltså kalla sitt projekt för MinSotaLillaApp i stället för Min Söta Lilla App.

Övningar

Tillbaka till lektionslistan


Thomas Padron-McCarthy (thomas.padron-mccarthy@oru.se), 16 mars 2016