Remote Debug Bridge CLI
The Remote Debug Bridge CLI is a command-line tool that allows you to use a remote device as a local device.
This allows you to develop and debug on several devices that are managed in the Cloud Server.
Prerequisites and Limitations
These are the requirements and limitations when working with these host machines.
Mac
- Remote Debugging tool installed
- iOS
- Works only on a Mac machine.
- Requires good network conditions between the cloud machine and the local machine.
- iTunes and Xcode must be closed before starting the remote debugging.
- Android - Works with up to 4 devices in parallel.
Windows
- Remote Debugging tool installed
- Android - can work with up to 4 devices in parallel.
Commands and Descriptions
Command | Parameters | Description |
---|---|---|
help | none | Prints help message to the console. |
version | none | Prints the product version. |
start-remote-debug | [--url <cloud_server_url>] [--access-key <access_key>] [--serial-number <device_serial_number>] | Connects to device from cloud server and starts remote debugging. |
repair | [-v] - Verbose (print log to console) | Fixes connection issues with iOS devices (requires admin permissions). |
log | none | Returns the path to the Remote Debug Bridge tool log file. |
credentials | none | Prompts for the user name and password. These are stored encrypted on the local user computer. |
store | -ip <ip_adress> -port <port> [-project <project_name>] | Stores the Cloud Server information. |
generate_symbols | -os_version <os_version_with_build_number> | Generates fake symbols for Xcode, this allows the session to start quicker. Note that debugging an iOS app won't work when running with fake symbols. For more information see Generate Symbols. |
fetch-ios-symbols | [--url <cloud_server_url>] [--access-key <access_key>] [--udid <iOS_device_UDID>] [--dest <destination_folder>] (optional) default location is "/Users/<USER>/Library/Developer/Xcode/iOS DeviceSupport" | Fetches from the device the real symbols for Xcode to enable debugging the app. This command must be run separately after running start-remote-debug. Make sure to run this command before opening Xcode to avoid conflict where Xcode also tries to download symbols. |
Usage Examples
This example demonstrates how to work with a remote Android device.
-
Run
rdb start-remote-debug
to connect to the remote device.usage: rdb store -ip <ip> -port <port>
C:\Program Files (x86)\Experitest\SeeTestRemoteDebugging>rdb start-remote-debug --url <> --access-key <accessKey> --serialnumber ce05160545dc6d3702
The device is now attached as local to the client machine.
info- Keep the console alive during the remote session. Closing the console disconnects the remote device.
- The device must be reserved. Releasing the device or session timeout disconnects the remote device.
-
Open Android Studio to work with the connected device.
Generate Symbols
In Xcode, click Window → Devices. The device version and build number are under the device name,
Some devices require an architecture field as well.
If your device model is in the list, add arm64e
to the os_version parameter.
Examples
-
iPhone 7 with iOS version 12.4.5 that is not in the arm64e architecture list – > os_version should be "12.4.5 (16G161)"
-
iPhone SE with iOS version 14.4 that appears in the arm64e architecture list → os_version should be "14.4 (18D52) arm64e"
infoWrap the OS version parameter in double-quotes as seen in the examples.
arm64e architecture
Release Year | Device |
---|---|
2018 | * iPhone XS * iPhone XS Max * iPhone XR |
2019 | * iPad Mini 5 * iPad Air 3 * iPhone 11 * iPhone 11 Pro * iPhone 11 Pro Max |
2020 | * Eighth generation iPad * iPhone SE 2 * Fourth-generation iPad Air * iPhone 12 mini * iPhone 12 * iPhone 12 Pro * iPhone 12 Pro Max |
Troubleshooting
Android - ADB version mismatch
The ADB version in the Remote debugging installation folder <Installation_Folder>\bin\adb\ must be the same version as in your Android SDK folder.
To check the version, open the command line and run the command ADB version
from the ADB folder.
iOS - Local devices do not return after using the Remote Debugging feature
- Close iTunes and Xcode, then open them again.
- Run the command rdb repair.
iOS and Android - Failed to connect to the RDB daemon
To establish a connection with the remote device, restart the remoteDebuggingDaemon daemon.