Hero Background

Next-Gen App & Browser Testing Cloud

Trusted by 2 Mn+ QAs & Devs to accelerate their release cycles

Next-Gen App & Browser Testing Cloud

How to configure emulator settings?

You configure Android emulator settings through the Device Manager in Android Emulator Online. Open View > Tool Windows > Device Manager, select an Android Virtual Device (AVD), and click Edit this AVD to change the hardware profile, system image, graphics, boot behaviour, network, camera, and CPU. Click Show Advanced Settings in the Verify Configuration window for the full set of options, use the Extended Controls panel to tweak a running emulator, and edit the AVD's config.ini file for low-level properties the GUI does not expose.

Create or Edit an AVD in Device Manager

Every emulator instance is backed by an Android Virtual Device, and all of its settings live in that AVD. To create one or open an existing one for editing, follow these steps.

  • Open View > Tool Windows > Device Manager (on older Android Studio builds this is Tools > AVD Manager).
  • To make a new device, click + Create Virtual Device, then move through Select Hardware, choose a System Image, review the Verify Configuration screen, and click Finish.
  • To change an existing device, select it on the Virtual tab and click the pencil icon labelled Edit this AVD.
  • In the Verify Configuration window, click Show Advanced Settings to reveal memory, storage, graphics, boot option, camera, network, and multi-core CPU controls.
  • Adjust the values you need and click Finish to save. The changes apply the next time the emulator launches.

Hardware Profile Settings

The hardware profile defines the virtual phone, tablet, foldable, or wearable that your app runs on. The most impactful fields are:

  • Device definition: screen size, resolution, and pixel density, taken from a preset such as Pixel 8 or Galaxy, or from a custom hardware profile you import.
  • RAM: the amount of virtual memory given to the device. More RAM helps heavy apps but consumes host memory, so keep it close to a realistic value such as 2 GB or 4 GB.
  • VM heap: the per-app memory ceiling the Android runtime allows; raise it only if your app hits out-of-memory errors.
  • Internal storage: the size of the data partition. Increase it if you install large APKs or generate a lot of test data.
  • SD card: optional removable storage you can enable to test media and file-handling behaviour.

System Image (API Level and ABI)

The system image decides which Android version the emulator runs and how fast it performs on your machine.

  • API level: pick the Android release you need to validate, for example API 34 (Android 14) or API 35 (Android 15). Keep at least one image on your app's minimum supported API.
  • ABI: choose x86_64 on Intel and AMD hosts for hardware-accelerated speed, or arm64-v8a on Apple Silicon Macs where ARM images run natively.
  • Image variant: select a Google Play image when the app relies on Google Play Services (Maps, Sign-In, FCM push), or a plain AOSP image when it does not.

Graphics and Hardware Acceleration

Rendering mode has the biggest effect on emulator smoothness. Under Emulated Performance, the Graphics dropdown offers three options:

  • Hardware - GLES 2.0: renders through the host GPU. The fastest choice on most machines.
  • Software - GLES 2.0: uses SwiftShader to render on the CPU. Slower, but a reliable fallback on systems with troublesome GPU drivers.
  • Automatic: lets the emulator decide between host and software rendering.

Acceleration is backed by a hypervisor: WHPX or AEHD on Windows, KVM on Linux, and the Hypervisor.Framework on macOS. You can also force the graphics mode at launch with the -gpu flag, for example -gpu host, -gpu swiftshader_indirect, or -gpu off.

Cold Boot, Quick Boot, and Snapshots

  • Quick Boot: the default. The emulator saves a snapshot when you close it and restores that state instantly on the next launch.
  • Cold Boot: a full boot from scratch, like a real device powering on. Set it under Advanced Settings > Emulated Performance > Boot option > Cold boot, or run a one-off cold boot from the AVD's menu with Cold Boot Now.
  • Snapshots: you can take and load multiple named snapshots per AVD from the Snapshots pane, while Quick Boot keeps a single auto-saved snapshot.
  • Invalidation: changing the system image, AVD configuration, or emulator version invalidates saved snapshots, so the next launch falls back to a cold boot.

Orientation, Camera, Network, GPS, and Battery

Many settings are tuned at creation time, but you can change device conditions on a running emulator through the Extended Controls panel, opened with the ... button on the emulator toolbar.

  • Orientation: rotate between portrait and landscape with the toolbar rotate buttons or the keyboard rotate shortcut.
  • Camera: set front and back cameras to emulated, virtual scene, or a host webcam to test capture features.
  • Network: simulate connection quality with cellular signal strength, network type, and the -netspeed and -netdelay launch flags.
  • GPS and location: push a single latitude and longitude, or play back a route from a GPX or KML file under the Location tab.
  • Battery: change charge level, charger state, and battery health to test low-power and charging behaviour.

Multi-Core CPU and Launch Flags

Under Advanced Settings you can assign extra CPU cores to the AVD with Multi-Core CPU, which improves performance for compute-heavy apps. For automation and CI you can skip the GUI entirely and launch a configured AVD from the command line.

# List the AVDs available on your machine
emulator -list-avds

# Launch an AVD with GPU acceleration
emulator -avd Pixel8_API_34 -gpu host

# Launch with custom RAM, cores, network, and a forced cold boot
emulator @Pixel8_API_34 -gpu host -memory 2048 -cores 4 \
  -netspeed full -netdelay none -no-snapshot-load

Editing config.ini Directly

Each AVD stores its hardware properties in a config.ini file. Editing it while the emulator is stopped lets you change values the GUI hides, and you can open the folder from the Device Manager AVD menu using Show on Disk.

  • Windows path: C:\Users\<user>\.android\avd\<Name>.avd\config.ini
  • macOS / Linux path: ~/.android/avd/<Name>.avd/config.ini
# Common config.ini keys
hw.ramSize=2048
vm.heapSize=256
disk.dataPartition.size=6442450944
hw.lcd.density=420
hw.gpu.mode=host
hw.cpu.ncore=4
hw.gps=yes
hw.camera.back=virtualscene

Emulator Settings Reference

SettingWhere to change itWhat it controls
RAM / storageAdvanced Settings or config.iniVirtual memory and data partition size
GraphicsEmulated Performance / -gpuHost GPU, software, or automatic rendering
Boot optionEmulated Performance / -no-snapshot-loadCold boot versus Quick Boot snapshot
NetworkExtended Controls / -netspeed, -netdelayCellular type, signal, speed, and latency
LocationExtended Controls > LocationGPS point or GPX/KML route playback
CPU coresAdvanced Settings / -coresNumber of virtual CPU cores

Tuning a local AVD is worthwhile for day-to-day development, but maintaining many hardware and API-level combinations on one machine becomes slow. TestMu AI cloud emulators and the Real Device Cloud let you pick an OS version and device from a list and run tests in parallel, with no local config.ini editing or snapshot management to maintain.

Frequently Asked Questions

Where do I configure Android emulator settings?

In Android Studio, open View > Tool Windows > Device Manager (formerly Tools > AVD Manager). Select an AVD, click Edit this AVD, and use Verify Configuration plus Show Advanced Settings to change RAM, storage, graphics, boot option, camera, network, and CPU. Persistent low-level tweaks go in the AVD's config.ini file.

What is the difference between cold boot and quick boot?

Quick Boot saves a snapshot of the emulator state when you close it and restores it instantly on the next launch, so startup is fast. Cold Boot ignores any saved snapshot and boots the system image from scratch. Use Cold Boot when settings or state appear corrupted, and Quick Boot for speed during routine testing.

How do I launch an AVD with GPU acceleration from the command line?

List your AVDs with emulator -list-avds, then launch one with emulator -avd Pixel8_API_34 -gpu host. The -gpu host flag renders through your machine's GPU. Other useful flags include -memory, -cores, -netspeed, -netdelay, and -no-snapshot-load for a cold boot.

Where is the emulator config.ini file located?

Each AVD keeps a config.ini under the .android folder in your home directory: C:\Users\<user>\.android\avd\<Name>.avd\config.ini on Windows, or ~/.android/avd/<Name>.avd/config.ini on macOS and Linux. Edit keys such as hw.ramSize, hw.gpu.mode, and disk.dataPartition.size while the emulator is stopped.

How do I simulate GPS, network conditions, or battery?

Open the Extended Controls panel from the emulator toolbar (the ... button). It lets you set a GPS location or route, change cellular signal and network type, adjust battery charge and health, switch camera input, and control virtual sensors, all without restarting the AVD.

Which system image should I choose, x86_64 or arm64?

Choose an x86_64 image on Intel or AMD machines because it runs with hardware acceleration and is fastest. Choose an arm64-v8a image on Apple Silicon Macs, where ARM images run natively. Pick a Google Play image if the app relies on Google Play Services, or a plain AOSP image when it does not.

Related Questions

Test Your Website on 3000+ Browsers

Get 100 minutes of automation test minutes FREE!!

Test Now...

KaneAI - Testing Assistant

World’s first AI-Native E2E testing agent.

...

TestMu AI forEnterprise

Get access to solutions built on Enterprise
grade security, privacy, & compliance

  • Advanced access controls
  • Advanced data retention rules
  • Advanced Local Testing
  • Premium Support options
  • Early access to beta features
  • Private Slack Channel
  • Unlimited Manual Accessibility DevTools Tests