AVD Android: co to je, Android Virtual Device a jak nastavit emulátor

Autor: IT Sectr Publikováno: 2026-02-09 Doba čtení: 10 min

AVD (Android Virtual Device) — je konfigurace emulátoru, která napodobuje skutečné zařízení Android na počítači vývojáře. Každý AVD obsahuje vybranou verzi OS (System Image), typ zařízení (telefon, tablet, Wear OS), velikost obrazovky a množství paměti. Podle Google Android Developers, 2026 se AVD používá k testování aplikací na různých verzích a konfiguracích Androidu bez nutnosti kupovat desítky fyzických zařízení. QEMU — hypervizor, na kterém emulátor běží.

Hlavní body

  • AVD — virtuální zařízení Android běžící na QEMU s vybranou System Image.
  • System Image — obraz operačního systému určité úrovně API s nebo bez služeb Google.
  • AVD Manager — nástroj Android Studio pro vytváření, konfiguraci a správu virtuálních zařízení.
  • Pro výkonnou práci AVD je vyžadována hardwarová virtualizace (HAXM, Hypervisor.Framework nebo WHPX).
  • AVD umožňuje testování aplikací na různých verzích Androidu, velikostech obrazovky a konfiguracích bez fyzického zařízení.

Co je AVD

AVD (Android Virtual Device) — je softwarová konfigurace popisující virtuální zařízení Android. Na rozdíl od fyzického telefonu AVD nevyžaduje hardware — spouští se na počítači přes emulátor Android založený na QEMU. Vývojář vytváří tolik AVD, kolik je potřeba pro testování: pro různé verze Androidu, velikosti obrazovky, množství paměti a hustoty pixelů.

Každý AVD je vázán na konkrétní SDK Platform. To znamená, že pro vytvoření AVD s Androidem 14 (API Level 34) je třeba nejprve nainstalovat System Image této verze přes SDK Manager. System Image je obraz operačního systému, který obsahuje všechny systémové aplikace, služby Google (pokud je vybrán obraz Google APIs) a runtime komponenty. Google doporučuje používat obrazy Google APIs se službami Google Play pro maximální kompatibilitu s reálnými zařízeními.

AVD je při vývoji nepostradatelný z několika důvodů. Za prvé umožňuje testovat aplikaci na různých verzích Androidu bez nákupu desítek zařízení. Za druhé AVD podporuje Snapshots — ukládání stavu systému, což urychluje spouštění. Za třetí je emulátor integrován s Android Studio: instalace APK, ladění a logování fungují stejně jako na fyzickém zařízení.

Typy virtuálních zařízení

AVD podporuje různé typy zařízení: telefony (Phone), tablety (Tablet), hodinky (Wear OS), televize (Android TV) a automobilové systémy (Android Automotive). Pro každý typ poskytuje AVD Manager hotové profily od Google: Pixel 8, Pixel 9 Pro, Nexus 7, Samsung Galaxy Tab a další. Profil zařízení určuje velikost obrazovky, rozlišení, hustotu pixelů (dpi) a navigaci (gesta nebo tlačítka).

Typ zařízeníPříklad profiluRozlišenídpi
PhonePixel 81080x2400420
PhonePixel 9 Pro1280x2856490
TabletPixel Tablet2560x1600320
Wear OSPixel Watch384x384320
Android TVAndroid TV 4K1920x1080240

Z čeho se AVD skládá

Každý AVD je sada konfiguračních souborů a obrazů. Hlavní konfigurační soubor — config.ini, který ukládá parametry virtuálního zařízení: název, typ, API Level, velikost obrazovky, množství RAM a VM heap. Soubor se nachází v adresáři $HOME/.android/avd/NázevAVD.avd/ a lze jej ručně upravit, i když se obvykle edituje přes AVD Manager.

Kromě config.ini se v adresáři AVD ukládá: userdata.img (obraz uživatelských dat — aplikace, nastavení, soubory), system.img (odkaz na System Image nainstalované SDK Platform), cache.img (mezipaměť) a sdcard.img (obraz SD karty). Při provedení Wipe Data je userdata.img smazán a je vytvořen nový prázdný obraz. Snapshots se ukládají do samostatné složky snapshots/ v adresáři AVD.

System Image se stahuje odděleně od AVD — jeden obraz může používat několik virtuálních zařízení. Systémové obrazy jsou uloženy v adresáři Android SDK: $ANDROID_SDK/system-images/android-{API}/{type}/{arch}/. Typy obrazů: google_apis (se službami Google), google_apis_playstore (s Google Play Store) a default (čistý AOSP bez služeb Google).

Typy System Images

Typ obrazuSlužby GoogleGoogle PlayK čemu
AOSP (default)NeNeZákladní testování, čistý Android
Google APIsAnoNeTestování služeb Google, Maps, FCM
Google PlayAnoAnoPlné testování s Play Store a licencováním

Vytvoření AVD přes AVD Manager

AVD Manager — je grafický nástroj v Android Studio pro vytváření a správu virtuálních zařízení. Lze jej otevřít přes menu Tools → Device Manager nebo přes ikonu na panelu nástrojů. AVD Manager zobrazuje seznam vytvořených zařízení, jejich stav (spuštěno/zastaveno), verzi Androidu a dostupné akce (spuštění, zastavení, wipe data, úprava).

Pro vytvoření nového AVD klikněte na tlačítko Create device. Vyberte profil zařízení ze seznamu hotových profilů — Google poskytuje profily pro všechna populární zařízení. Po výběru profilu uveďte System Image: verzi Androidu a typ obrazu. Pro nové projekty vyberte nejnovější stabilní verzi s obrazem Google APIs. Poté nakonfigurujte název AVD, orientaci obrazovky, množství RAM a VM heap. Po vytvoření je AVD připraven ke spuštění.

Vytvoření AVD krok za krokem z příkazového řádku

bash
# Seznam dostupných System Images
sdkmanager --list | grep system-images

# Instalace System Image pro API 35 s Google APIs
sdkmanager "system-images;android-35;google_apis;x86_64"

# Vytvoření AVD s názvem pixel8_api35
avdmanager create avd -n pixel8_api35 \
    -k "system-images;android-35;google_apis;x86_64" \
    -d pixel_8

# Spuštění vytvořeného AVD
emulator -avd pixel8_api35 -gpu host -memory 2048

# Seznam všech AVD
avdmanager list avd

Konfigurace hardwarových charakteristik AVD

AVD Manager umožňuje detailně nakonfigurovat hardwarové charakteristiky virtuálního zařízení. Hlavní parametry: RAM (operační paměť, doporučená hodnota 2048–4096 MB), VM heap (velikost haldy virtuálního stroje, 256–512 MB), Internal Storage (interní úložiště, 2–8 GB) a SD Card (virtuální SD karta). Tyto parametry ovlivňují výkon aplikace a její chování při nedostatku paměti.

Další nastavení zahrnuje: kameru (emulovanou nebo připojení webkamery hostitele), senzory (akcelerometr, gyroskop), NFC, Bluetooth a baterii. Například pro testování aplikací s určováním polohy lze emulovat otáčení zařízení pomocí ovládacích tlačítek emulátoru nebo přes ADB. Emulace senzorů umožňuje testovat scénáře, které je obtížné reprodukovat na fyzickém zařízení.

Klíčové parametry config.ini

ParametrPopisDoporučená hodnota
hw.ramSizeOperační paměť zařízení2048
vm.heapSizeVelikost haldy virtuálního stroje256
hw.gpuEnabledHardwarová akcelerace grafikyyes
hw.gpuModeRežim GPU (host/mesa)host
disk.dataPartition.sizeVelikost datového oddílu4096M
hw.cameraTyp emulace kameryemulated

Optimalizace výkonu emulátoru

Rychlost provozu AVD přímo závisí na hardwarové virtualizaci. Na Windows se používá Windows Hypervisor Platform (WHPX), na macOS — Hypervisor.Framework, na Linuxu — KVM. Pokud je virtualizace vypnutá, AVD pracuje v režimu čistě softwarové emulace, což je 10–20krát pomalejší. Pro kontrolu, zda je virtualizace zapnutá, spusťte emulátor s příznakem -accel-check.

Druhým klíčovým faktorem je volba architektury System Image. Obrazy x86_64 pracují výrazně rychleji než arm64-v8a na počítačích s procesory Intel a AMD, protože nevyžadují dynamický překlad instrukcí ARM. Vždy používejte x86_64 obrazy pro vývoj na Windows a macOS s procesory Intel. Na procesorech ARM Mac (Apple Silicon) používejte nativní arm64-v8a obrazy.

Příznaky příkazového řádku pro zrychlení

bash
# Spuštění s hardwarovou virtualizací a akcelerací GPU
emulator -avd pixel8_api35 -gpu host -memory 4096 -cores 4

# Kontrola podpory virtualizace
emulator -accel-check

# Spuštění bez grafického rozhraní (pro CI)
emulator -avd pixel8_api35 -no-window -no-audio -gpu off

# Použití snapshotů pro rychlé spouštění
emulator -avd pixel8_api35 -snapshot mysnapshot -no-snapshot-save

Tipy pro výkon emulátoru

Pro maximální výkon AVD: přidělte emulátoru alespoň 2–4 GB RAM, zapněte GPU Host (používá grafickou kartu počítače pro vykreslování), vypněte zvuk (příznak -no-audio), pokud není potřeba, a používejte Snapshots pro rychlý návrat do čistého stavu. Snapshots ukládají úplný stav systému — spuštění ze snímku trvá 2–5 sekund místo 30–60 sekund úplného načítání.

Doporučuje se také ukládat AVD na SSD disk — I/O operace při načítání systému a instalaci APK se výrazně urychlí. Pro práci s několika AVD současně zvyšte celkové množství RAM v počítači a používejte příznak -read-only pro neměnné emulátory.

Správa AVD z příkazového řádku

Plná kontrola nad AVD je možná z příkazového řádku bez Android Studio. Nástroje avdmanager a emulator jsou součástí Android SDK a provádějí všechny operace: vytváření, mazání, spouštění a konfiguraci AVD. Příkazový řádek je užitečný zejména v CI/CD pipeline, kde není grafické rozhraní, a pro automatizaci testování.

Základní příkazy správy AVD

bash
# Vytvořit AVD s vlastními parametry
avdmanager create avd -n test_device \
    -k "system-images;android-34;google_apis;x86_64" \
    --device "pixel_8" \
    --force

# Smazat AVD
avdmanager delete avd -n test_device

# Klonovat AVD (kopírováním souborů)
cp -r ~/.android/avd/pixel8_api35.avd ~/.android/avd/pixel8_clone.avd

# Resetovat data AVD
emulator -avd test_device -wipe-data

# Nainstalovat APK na běžící AVD
adb -s emulator-5554 install app-release.apk

ADB a AVD: klíčové příkazy

Po spuštění AVD s ním lze pracovat přes ADB (Android Debug Bridge) jako s fyzickým zařízením. ADB umožňuje instalovat aplikace, spouštět intenty, emulovat události (hovory, SMS, GPS), pořizovat snímky obrazovky a nahrávat video obrazovky. To dělá z AVD plnohodnotné prostředí pro automatizované testování.

bash
# Seznam připojených zařízení (včetně AVD)
adb devices

# Emulace příchozího hovoru
adb emu gsm call +15551234567

# Emulace GPS souřadnic
adb emu geo fix -122.084 37.422

# Pořídit snímek obrazovky
adb exec-out screencap -p > screenshot.png

# Odeslat SMS
adb emu sms send +15551234567 "Hello from AVD"

Kontrola emulátoru v kódu aplikace

Někdy musí vývojář v kódu určit, zda aplikace běží na emulátoru nebo na fyzickém zařízení. To může být potřeba pro vypnutí analytiky (aby se nezanášela produkční data), zapnutí rozšířeného logování nebo vypnutí hardwarově závislých funkcí, které na emulátoru nefungují. Google poskytuje standardní metody kontroly přes třídu Build a systémové vlastnosti.

Metoda kontroly přes vlastnost Build

kotlin
object EmulatorDetector {
    fun isEmulator(): Boolean {
        return (Build.BRAND.startsWith("generic") &&
                Build.DEVICE.startsWith("generic")) ||
                Build.FINGERPRINT.startsWith("generic") ||
                Build.FINGERPRINT.startsWith("unknown") ||
                Build.HARDWARE.contains("goldfish") ||
                Build.HARDWARE.contains("ranchu") ||
                Build.MODEL.contains("google_sdk") ||
                Build.MODEL.contains("Emulator") ||
                Build.MODEL.contains("Android SDK")
    }
}

// Použití
if (EmulatorDetector.isEmulator()) {
    Log.d("App", "Running on emulator — enable debug mode")
}

Kontrola přes systémové vlastnosti

Doplňková metoda — čtení systémových vlastností přes Build.getRadioVersion() a kontrola ro.kernel.qemu. Na emulátoru vrací radio version null a vlastnost qemu je nastavena na 1. Tato metoda je spolehlivější na starších verzích Androidu, kde může být Build.FINGERPRINT změněn výrobcem zařízení.

kotlin
fun isRunningOnEmulator(): Boolean {
    // Kontrola přes radio version — na emulátoru vždy null
    val radioVersion = try {
        Build.getRadioVersion()
    } catch (e: Exception) {
        null
    }
    if (radioVersion.isNullOrBlank()) return true

    // Kontrola přes systémové vlastnosti
    return try {
        val props = ProcessBuilder()
            .command("getprop", "ro.kernel.qemu")
            .start()
            .inputStream.bufferedReader().readText().trim()
        props == "1"
    } catch (e: Exception) {
        false
    }
}

Často kladené otázky

Čím se AVD liší od fyzického zařízení?

AVD běží na QEMU a nemůže plně napodobit hardwarové vlastnosti: skutečnou kameru, NFC, Bluetooth. AVD je ideální pro testování UI, kontrolu životního cyklu a kompatibility s verzemi OS. Pro přesné testování kamery a senzorů je potřeba fyzické zařízení.

Kolik AVD je třeba vytvořit?

Minimálně 2–3 AVD: nejnovější API Level pro kontrolu nových funkcí, minimální podporovaný (minSdk) pro kompatibilitu a populární model zařízení (Pixel 8 nebo Samsung Galaxy) pro testování UI pro konkrétní obrazovku.

Proč AVD běží pomalu?

Hlavní příčiny: vypnutá hardwarová virtualizace (WHPX, Hypervisor.Framework, KVM), málo RAM (méně než 2 GB), vypnutý GPU Host. Zapněte -gpu host a zvýšte paměť na 2–4 GB — to zrychlí emulátor 3–5krát.

Lze spustit AVD bez Android Studio?

Ano. Emulátor se spouští přes emulator -avd Název_AVD z příkazového řádku. K tomu jsou potřeba Android SDK, Platform-Tools a nainstalovaná System Image. AVD Manager je také k dispozici jako konzolový nástroj avdmanager.

Jak resetovat AVD na tovární nastavení?

V AVD Manager vyberte Wipe Data — tím se smaže userdata.img a emulátor se vrátí do původního stavu. Z příkazového řádku: emulator -avd Název -wipe-data. Snapshots přitom zůstanou zachovány, pokud nejsou smazány samostatně.

Shrnutí

  • AVD — virtuální zařízení Android založené na QEMU, umožňující testování aplikací bez fyzického telefonu.
  • System Image — obraz operačního systému určité úrovně API, dostupný ve variantách AOSP, Google APIs a Google Play.
  • AVD Manager — nástroj pro vytváření, konfiguraci a správu virtuálních zařízení v Android Studio nebo z příkazového řádku.
  • Pro výkon AVD je povinná hardwarová virtualizace (WHPX, Hypervisor.Framework, KVM) a volba obrazu x86_64.
  • Přes ADB jsou dostupné všechny emulační operace: hovory, SMS, GPS, instalace APK, snímky obrazovky — jako na fyzickém zařízení.
  • Pro detekci emulátoru v kódu použijte kontroly Build.FINGERPRINT, Build.HARDWARE a ro.kernel.qemu.
  • Ukládejte AVD na SSD a používejte Snapshots pro urychlení spouštění — zkracuje dobu načítání z 60 na 2–5 sekund.

Vyvineme mobilní aplikaci na klíč

IT Sectr vytváří aplikace pro iOS a Android pro startupy a podniky od roku 2017. Poradíme vám a navrhneme nejlepší řešení.

Prodiskutovat projekt

Přečtěte si také