Skip to main content
device is a runtime proxy over the Android emulator API. Use it for emulator-level operations — such as setting location, placing images in the virtual camera scene, configuring network proxies, passing audio to the microphone, or running raw adb commands — that sit outside app UI interactions. Use driver for interacting with the app itself. device is only available while a flow is running.

setGeoLocation

Sets the emulator’s GPS location.
Example:
Use this to test location-aware features without physically moving a device. See Mock device location for a full walkthrough.

setVirtualSceneImage

Places an image into the Android emulator’s virtual camera scene. Use this to test features that require the camera to see a specific image — such as barcode or QR code scanning.
Example:
Virtual scene is scoped to barcode/QR code scanning and augmented reality (AR) use cases. It is not a general photo or video injection mechanism. See Android barcode and QR scanning for a full walkthrough.

playAutomation

Triggers an automation macro on the Android emulator. Use this in combination with setVirtualSceneImage to animate the virtual camera toward a placed image.
Example:
Available built-in macros are determined by the Android emulator. Walk_to_image_room is the macro used to animate the virtual camera toward a placed image. See Android Emulator camera support for more detail on virtual scene automation.

setProxy

Configures a proxy for the Android emulator’s network traffic.
Example:

clearProxy

Removes any proxy configuration from the Android emulator.
Example:
Call clearProxy() at the end of any flow that sets a proxy to avoid affecting subsequent flows.

passAudioAsMicrophoneInput

Plays an audio file on the runner host so the emulator receives it as microphone input. Use this to test recording, voice, or speech-recognition features with known audio.
Example:
Playback is bounded by the command timeout (1 minute by default). For audio longer than a minute, pass durationSeconds. See Microphone injection for a full walkthrough.

adb

Runs an adb command against the emulator and returns its combined stdout/stderr. Use this as an escape hatch for emulator or device operations not covered by a dedicated device method — such as dumpsys, emu sensor set, or pull. Pass the arguments either as a single string (split on whitespace; quote a single value that contains spaces) or as an array (preferred when building arguments programmatically). The command does not go through a host shell, so it does not expand variables or run pipes.
Example:
Real-world example — jump the device clock to test time-gated features (disable auto time, move the clock, then restore):
Prefer a dedicated device method when one exists. See Measure performance and Mock hardware sensors for adb usage in context.
Last modified on June 10, 2026