Gemeenschappelijke Android-apparaatconfiguraties

Android-ontwikkelaars moeten een groot aantal verschillende Android-apparaten targeten om het grootste aantal gebruikers te bereiken. Door de Android Emulator op de juiste manier te configureren om het gedrag van verschillende apparaten na te bootsen, kunnen ontwikkelaars waardevolle tijd en geld besparen bij het testen en incompatibiliteit identificeren. In deze zelfstudie leert u hoe u Android Virtual Device (AVD) -configuraties kunt maken voor een verscheidenheid aan populaire Android-apparaten die momenteel op de markt zijn. Concreet maakt u AVD-configuraties voor de:

  • HTC Evo 4G
  • Google / HTC Nexus One
  • Motorola Droid
  • T-Mobile / HTC G1
  • Archos 5 internettablet

Eindresultaat voorbeeld

Veronderstellingen

De auteurs gaan ervan uit dat de lezer enige basiskennis van Android heeft en dat alle tools zijn geïnstalleerd en werken specifiek voor Eclipse, de Android SDK en de Android ADT-plug-in voor Eclipse. U moet de Android SDK en AVD Manager gebruiken die beschikbaar zijn in de Eclipse IDE voor deze zelfstudie.

Opmerking: als je de Eclipse IDE voor Android-ontwikkeling niet gebruikt, kun je deze tutorial nog steeds volgen en de juiste AVD-configuraties maken met behulp van het opdrachtregelprogramma android.bat (of de opdracht android in Mac & Linux) in de / tools map van de Android SDK-installatie. De stappen zijn echter anders, omdat u aan de opdrachtregel werkt in plaats van via de Android SDK en AVD Manager. Zie de Android SDK-documentatie voor meer informatie over het opdrachtregelprogramma android en hoe je dit kunt gebruiken om AVD's te maken en te beheren..

Stap 1: vertrouwd raken met de Android SDK en AVD Manager

De Android SDK en AVD Manager zijn geïntegreerd in de Eclipse IDE wanneer u de plug-in voor Android Development Tools (ADT) installeert. De Android SDK en AVD Manager worden gebruikt om de verschillende Android SDK-doelen die op uw ontwikkelmachine zijn geïnstalleerd bij te houden, evenals om de Android Virtual Devices (AVD's) te beheren die door de Android Emulator worden gebruikt om het gedrag van echte Android-apparaten na te bootsen.

Een Android Emulator moet een AVD-configuratie hebben om te kunnen functioneren. Een AVD vertegenwoordigt een uniek, persistent systeembeeld. Alle instellingen zijn gewijzigd en toepassingen die zijn geïnstalleerd terwijl de AVD in de emulator wordt gebruikt, worden opgeslagen in de systeemkopie.

Een AVD-configuratie beschrijft ook hoe de emulator een echt apparaat moet emuleren, inclusief:

  • Welke versie van het Android-platform moet worden geëmuleerd (API-niveau) (Opmerking: het doelplatform kan worden gewijzigd als en wanneer apparaten door de lucht worden ontvangen)
  • Schermgrootte, dichtheid en resolutie
  • SD-kaartformaat en inhoud
  • Hardwaregegevens (Camera? Toetsenbord? Trackball? D-Pad?)

Een volledige lijst met opties voor hardware-emulatie, inclusief instellingen en hun standaardwaarden, is beschikbaar in de Android SDK-documentatie.

U kunt de Android SDK en AVD Manager starten vanuit de Eclipse-werkbalk door op de knop met het groene Android-pictogram met de pijl te drukken () of door Venster-> Android SDK en AVD Manager te kiezen.

Stap 2: Een AVD maken om de HTC Evo 4G te emuleren

Een van de nieuwste Android-apparaten op de markt, de HTC Evo 4G is een krachtige nieuwe telefoon met een mooi groot scherm, een krachtige processor en een geweldige camera.

De belangrijke specificaties van dit apparaat vanuit een emulatorperspectief zijn:

  • Doelplatform: momenteel Android 2.1
  • Scherminfo: groot scherm, hoge dichtheid
  • Gebrek aan toetsenbord en DPad
  • Gebrek aan trackball

Laten we daarom een ​​AVD-configuratie maken met de naam Evo4G:

  1. Open binnen Eclipse de Android SDK en AVD Manager
  2. Selecteer 'Virtuele apparaten' uit de opties aan de linkerkant
  3. Klik op de knop "Nieuw" om een ​​nieuwe AVD-configuratie te maken
  4. Noem de AVD: "Evo4G"
  5. Selecteer het doel: "Google API's API Level 7"
  6. Voer de SD-kaartgrootte in: "8GB"
  7. Voer de huiddetails in: "800x480"
  8. Bewerk de hardware-eigenschap voor samengevatte lcd-densiteit: "217"
  9. Voeg een andere hardware-eigenschap voor DPad-ondersteuning toe: "Nee"
  10. Voeg een ander hardwarepakket toe voor toetsenbordondersteuning: "Nee"
  11. Voeg een andere hardwarematige eigenschap toe voor Track-ball-ondersteuning: "Nee"
  12. Sla de AVD op

U hebt nu een AVD gemaakt die door de Android Emulator kan worden gebruikt om sterk op de HTC Evo 4G te lijken en deze te gedragen. Als u een Android-toepassing in de emulator start terwijl u deze AVD gebruikt, kunt u zien dat het scherm sterk lijkt op de ervaring die u op het eigenlijke apparaat zou hebben. Als u een van deze apparaten bezit, merkt u onmiddellijk dat het scherm er niet hetzelfde uitziet (qua software). De emulator biedt geen add-ons van derden, zoals de HTC Sense UI.

Stap 3: Een AVD maken om de Google Nexus One te emuleren

Google's Nexus One is een krachtige telefoon met de nieuwste Android-release. Als een apparaat dat oorspronkelijk rechtstreeks door Google is verkocht, lijkt deze telefoon het snelst updates te ontvangen. Het heeft ook een mooi scherm en is vrij snel, vooral met Android 2.2.

De belangrijke specificaties van dit apparaat vanuit een emulatorperspectief zijn:

  • Doelplatform: momenteel Android 2.2
  • Scherminfo: Middelgrote, hoge dichtheid
  • Geen toetsenbord of DPad
  • Heeft track-ball

Laten we daarom een ​​AVD-configuratie maken met de naam NexusOne:

  1. Open binnen Eclipse de Android SDK en AVD Manager
  2. Selecteer 'Virtuele apparaten' uit de opties aan de linkerkant
  3. Klik op de knop "Nieuw" om een ​​nieuwe AVD-configuratie te maken
  4. Noem de AVD: "NexusOne"
  5. Selecteer het doel: "Google API's API Level 8"
  6. Voer de SD-kaartgrootte in: "4GB"
  7. Voer de details van de skin in: "WVGA800" (800x480)
  8. Een hardwareproductie toevoegen voor samengevatte lcd-densiteit: "252"
  9. Voeg een andere hardware-eigenschap voor DPad-ondersteuning toe: "Nee"
  10. Sla de AVD op

U hebt nu een AVD gemaakt die door de Android Emulator kan worden gebruikt om sterk op de Google Nexus One te lijken en deze te gedragen. Als u een Android-toepassing in de emulator start terwijl u deze AVD gebruikt, kunt u zien dat het scherm sterk lijkt op de ervaring die u op het eigenlijke apparaat zou hebben. Hier zien we een foto met de Android Emulator met de NexusOne AVD aan de rechterkant en een echte Nexus One aan de linkerkant.

Stap 4: Een AVD maken om de Motorola Droid te emuleren

De Motorola Droid is een van de meest voorkomende Android-telefoons die momenteel in de Verenigde Staten beschikbaar is. Het is ook anders dan veel van de andere nieuwere Android-handsets omdat het een hardwaretoetsenbord heeft.

De belangrijke specificaties van dit apparaat vanuit een emulatorperspectief zijn:

  • Doelplatform: momenteel Android 2.1.
  • Scherminfo
  • Gebrek aan trackball-ondersteuning
  • Heeft toetsenbord en DPAD

Laten we daarom een ​​AVD-configuratie maken met de naam MotoDroid:

  1. Open binnen Eclipse de Android SDK en AVD Manager
  2. Selecteer 'Virtuele apparaten' uit de opties aan de linkerkant
  3. Klik op de knop "Nieuw" om een ​​nieuwe AVD-configuratie te maken
  4. Geef de AVD een naam: "MotoDroid"
  5. Selecteer het doel: "Google API's API Level 7"
  6. Voer de SD-kaartgrootte in: "16GB"
  7. Voer de huiddetails in: "WVGA854"
  8. Bewerk de hardware-eigenschap voor samengevatte lcd-densiteit: "265"
  9. Voeg een andere hardwarematige eigenschap toe voor Track-ball-ondersteuning: "Nee"
  10. Sla de AVD op

U hebt nu een AVD gemaakt die door de Android Emulator kan worden gebruikt om sterk op de Motorola Droid te lijken en deze te gedragen. Als u een Android-toepassing in de emulator start terwijl u deze AVD gebruikt, kunt u zien dat het scherm sterk lijkt op de ervaring die u op het eigenlijke apparaat zou hebben..

Stap 5: Een AVD maken om de T-Mobile G1 te emuleren

De T-Mobile G1 was de eerste openbaar beschikbare Android-telefoon. Hoewel veel gebruikers een upgrade naar de nieuwere Android-apparaten hebben uitgevoerd, zijn er nog steeds veel G1's in de buurt. In feite, vanaf dit schrijven, een goede
50% van de geactiveerde apparaten draait nog steeds met Android 1.5 en Android 1.6 - een goede indicatie dat G1's en andere vroege Android-handsets nog steeds in gebruik zijn.

De belangrijke specificaties van dit apparaat vanuit een emulatorperspectief zijn:

  • Doelplatform: Google-add-ons met Android 1.6
  • Scherminfo: gemiddelde dichtheid en klein
  • Heeft toetsenbord en Track-ball, maar geen DPad

Laten we daarom een ​​AVD-configuratie maken met de naam TMobileG1:

  1. Open binnen Eclipse de Android SDK en AVD Manager
  2. Selecteer 'Virtuele apparaten' uit de opties aan de linkerkant
  3. Klik op de knop "Nieuw" om een ​​nieuwe AVD-configuratie te maken
  4. Geef de AVD een naam: "TMobileG1"
  5. Selecteer het doel: "Google API's API Level 5"
  6. Voer de SD-kaartgrootte in: "2GB"
  7. Voer de huiddetails in: "HVGA" (480x320)
  8. Bewerk de hardware-eigenschap voor samengevatte lcd-densiteit: "180"
  9. Een hardware-eigenschap toevoegen voor DPad-ondersteuning: "Nee"
  10. Sla de AVD op

U hebt nu een AVD gemaakt die door de Android Emulator kan worden gebruikt om sterk op de T-Mobile G1 te lijken en deze te gedragen. Als u een Android-toepassing in de emulator start terwijl u deze AVD gebruikt, kunt u zien dat het scherm sterk lijkt op de ervaring die u op het eigenlijke apparaat zou hebben..

Stap 6: Een AVD maken om de Archos 5-internettablet te emuleren

Laten we tot slot kijken naar een Android-apparaat dat geen telefoon is. Een goede optie is de Archos 5 Internettafel. Ontwikkelen voor andere typen Android-apparaten heeft zijn eigen reeks uitdagingen. Zonder de Google-add-ons kunt u niet vertrouwen op bepaalde apps die aanwezig zijn. De Google Maps-app is bijvoorbeeld niet beschikbaar. Het apparaat heeft mogelijk nog steeds een Maps-app, maar u weet niet per se hoe het zich zal gedragen. Testen zonder dat deze apps aanwezig zijn, zoals u met de emulator kunt doen, is ten zeerste aan te raden, zodat u weet of de toepassing aannames doet dat het niet zou mogen.

De belangrijke specificaties van dit apparaat vanuit een emulatorperspectief zijn:

  • Doelplatform: Android 1.6, maar geen Google-add-ons
  • Scherminfo: Hoge dichtheid en groot
  • Geen toetsenbord
  • Geen Google API's
  • Geen camera

Laten we daarom een ​​AVD-configuratie maken met de naam Archos5:

  1. Open binnen Eclipse de Android SDK en AVD Manager
  2. Selecteer 'Virtuele apparaten' uit de opties aan de linkerkant
  3. Klik op de knop "Nieuw" om een ​​nieuwe AVD-configuratie te maken
  4. Noem de AVD: "Archos5"
  5. Selecteer het doel: "Android 1.6 API Level 5"
  6. Voer de SD-kaartgrootte in: "2GB"
  7. Voer de huiddetails in: "WVGA800"
  8. Bewerk de hardware-eigenschap voor samengevatte lcd-densiteit: "194"
  9. Een hardware-eigenschap toevoegen voor DPad-ondersteuning: "Nee"
  10. Voeg een andere hardwarematige eigenschap toe voor Track-ball-ondersteuning: "Nee"
  11. Voeg een ander hardwarepakket toe voor toetsenbordondersteuning: "Nee"
  12. Nog een hardware-eigenschap voor camera-ondersteuning toevoegen: "Nee"
  13. Nog een hardware-eigenschap voor GSM-modem toevoegen Ondersteuning: "Nee"
  14. Sla de AVD op

U hebt nu een AVD gemaakt die door de Android Emulator kan worden gebruikt om sterk op de Archos 5-internettablet te lijken en deze te gedragen. Als u een Android-toepassing in de emulator start terwijl u deze AVD gebruikt, kunt u zien dat het scherm sterk lijkt op de ervaring die u op het eigenlijke apparaat zou hebben. Deze volgende foto toont de Android-emulator met de Archos5 AVD aan de rechterkant en een echte Archos 5-internettab aan de linkerkant.

Stap 7: Gebruik een specifieke AVD met de Android Emulator

Om de door u gecreëerde AVD's te gebruiken, moet u de Android Emulator starten en de juiste AVD toewijzen. De eenvoudigste manier om dit vanuit Eclipse te doen, is om een ​​Android-project te kiezen en de foutopsporing of configuratie uit te voeren om de handmatige modus of een specifieke AVD op naam te targeten. Wanneer u de toepassing uitvoert of foutopsporing uitvoert, wordt de juiste AVD geladen (als u er een hebt gekozen) of wordt u gevraagd om handmatig een geschikte AVD te kiezen uit de Android-apparaatkiezer, zoals hieronder wordt weergegeven.

Als u de schermgrootte van de emulator wilt kunnen regelen, moet u de knop "Start ..." van de Device Chooser of de Android SDK en AVD Manager gebruiken. U ziet het volgende dialoogvenster:

Zorg ervoor dat u de juiste cijfers kiest voor uw bureaublad en de schermgrootte van het apparaat. Op mijn 24-inch monitor met een beeldschermresolutie van 1920x1200 is de dpi 94. U moet dit berekenen voor uw eigen beeldscherm of laptopscherm.

Stap 8: Praktisch zijn

Hoewel je nu een apparaat op een veel realistischere manier kunt emuleren, zijn er bepaalde nadelen om dit te doen. Ten eerste, je bent nog steeds gewoon aan het emuleren, zoals we hebben besproken. Ten tweede, en wat nog belangrijker is, maken sommige van deze instellingen het gebruik van de emulator veel moeilijker. Als u er bijvoorbeeld voor kiest het toetsenbord uit te schakelen, zal de emulator dat eren en moet u het schermtoetsenbord in Android gebruiken. Als u GSM-hardware uitschakelt, kunt u ook geen gegevensverbinding maken, omdat de Wi-Fi-optie niet werkt..

Ten slotte neemt de SD-kaartgrootte zoveel ruimte op uw computer in beslag. Zorg ervoor dat u een SD-kaartformaat gebruikt dat groot genoeg is om uw toepassing te testen, maar er is geen echte dwingende noodzaak om de SD-kaart exact te emuleren. De SD-kaarten kunnen ook door de gebruiker worden vervangen, dus u kunt niet garanderen dat een gebruiker de originele kaart nog op zijn plaats heeft. U moet dus beslissen welke emulatie voor u het belangrijkst is. Bovendien kan de volledige emulatie het meest nuttig zijn wanneer deze wordt gebruikt met geautomatiseerde testtools in plaats van door mensen.

Conclusie

In deze tutorial leer je hoe je Android Virtual Devices (AVD's) kunt maken om veel populaire Android-apparaten te emuleren, waaronder: de HTC Evo 4G, de Google Nexus One, de Motorola Droid, de T-Mobile G1 en de Archos 5 internettablet.

De Android Emulator is de belangrijkste tool van de ontwikkelaar voor het ontwikkelen en publiceren van Android-applicaties, maar het is effectief als het de juiste doelapparaten emuleert. Dat is waar het maken van gedetailleerde AVD-configuraties voor doel-handsets essentieel wordt. Toch is het belangrijk om te onthouden dat de Emulator gewoon doet alsof - niet feitelijk de hardware- en softwarevaardigheden en -beperkingen uitvoert die uniek zijn voor dat apparaat. Om ervoor te zorgen dat uw applicatie werkt zoals verwacht op een bepaald apparaat, moet u het altijd op de eigenlijke hardware testen waar mogelijk. Dezelfde AVD kan worden gebruikt om meerdere applicaties te testen, of er kunnen meerdere AVD's worden gemaakt om verschillende apparaatconfiguraties voor één toepassing te testen.

Als je vragen hebt over deze tutorial, neem dan gerust contact met ons op. Raadpleeg de Dev Guide-documentatie op de Android Developer-website voor meer informatie over Android Virtual Devices (AVD's).

We hopen dat je deze tutorial leuk vond en kijk uit naar je feedback!

Over de Auteurs

Mobiele ontwikkelaars Lauren Darcey en Shane Conder hebben samen meerdere boeken geschreven over Android-ontwikkeling: een diepgaand programmeerboek getiteld Android Wireless Application Development en Sams TeachYourself Android Application Development binnen 24 uur. Wanneer ze niet schrijven, besteden ze hun tijd aan het ontwikkelen van mobiele software bij hun bedrijf en het leveren van consultingservices. Ze zijn te bereiken via e-mail naar [email protected], via hun blog op androidbook.blogspot.com, en op Twitter @androidwireless.

Meer hulp nodig bij het schrijven van Android-apps? Bekijk onze nieuwste boeken en bronnen!