Ana içeriğe geç
Versiyon: 1.0.1

Device Control

Real-time device streaming and control via WebRTC.

Overview​

Device Control provides real-time video streaming and interactive control of mobile devices. Using WebRTC technology, you can interact with devices as if they were in your hands - with low latency touch controls, hardware buttons, and file operations.

Connection Status​

The connection indicator shows the current streaming status:

StatusColorDescription
ConnectedGreenDevice is streaming and ready for control
ConnectingYellowEstablishing WebRTC connection...
P2P ActiveBlueDirect peer-to-peer connection established (lowest latency)
DisconnectedRedConnection lost - click Refresh to reconnect

Video Streaming​

Device Farm uses WebRTC with H.264 video encoding for low-latency streaming. The video quality automatically adapts based on your network conditions.

Quality TierBitrateFPSResolution
Ultra6 Mbps60 fps1920px
High4 Mbps30 fps1280px
Medium2 Mbps30 fps1024px
Low1 Mbps24 fps720px

Note: iOS devices stream at a fixed 2Mbps/25fps due to WebDriverAgent limitations.

Touch & Gestures​

Interact with the device using your mouse or trackpad:

Click / Tap​

Single click anywhere on the video to tap on the device.

Click & Drag / Swipe​

Click and drag to perform swipe gestures (scroll, slide).

Long Press​

Press and hold to trigger long press actions.

Keyboard Input​

Enable keyboard mode to type directly on the device.

Device Toolbar​

The toolbar on the right side provides quick access to device controls:

  • Home - Press home button
  • Back - Back button (Android)
  • Recent Apps - App switcher (Android)

Volume Controls​

  • Volume Up - Increase volume
  • Volume Down - Decrease volume

Capture Controls​

  • Take Screenshot - Capture current screen
  • Start Recording - Begin video recording
  • Stop Recording - End video recording

Input Controls​

  • Toggle Keyboard - When enabled, your keyboard input is sent directly to the device

App Management​

  • Install App - Install APK/IPA file
  • Kill All Apps - Close all running applications
  • Browse Files - Open device file browser

Test Controls​

  • Refresh Connection - Reconnect to device

App Installation​

Install apps on the device using one of these methods:

Drag & Drop​

Simply drag an APK, IPA, or .app bundle directly onto the video stream. The app will be uploaded and installed automatically.

Install from Files​

Click the Install App button and select from your previously uploaded files, or upload a new file from your computer.

.app Bundle Support (iOS)​

macOS .app bundles are automatically converted to ZIP format before upload. Drag the .app folder directly onto the stream.

Supported Formats​

PlatformSupported Formats
Android.apk, .aab
iOS.ipa, .app (bundle), .zip

File Operations​

Transfer files between your computer and the device:

Push File​

Upload a file from your Files library to a specific path on the device.

Pull File​

Download a file from the device to your computer.

Browse Files​

Navigate the device filesystem with a visual file browser.

Delete File​

Remove files or folders from the device storage.

Common Paths​

  • Android: /sdcard/Download/
  • iOS: /var/mobile/Documents/

View-Only Mode​

When a device is being used by another user, you can still view the test but cannot control the device. This is useful for:

  • Monitoring test execution by team members
  • Observing automation runs in real-time
  • Sharing device screen during demos
not

In view-only mode, an orange badge indicates that controls are disabled. Wait for the test to end or ask the current user to release the device.

Troubleshooting​

IssueSolution
Video not loadingClick Refresh to reconnect. Check your network connection.
High latencyTry a wired connection. Check if P2P connection is active (blue indicator).
Touch not respondingEnsure connection is established (green indicator). Disable keyboard mode if enabled.
App won't installCheck file format matches device platform. For iOS, ensure app is signed correctly.
Test ended unexpectedlyTest may have timed out due to inactivity or device disconnected.