ADB Commands Support
Android Debug Bridge (adb) is a versatile command-line tool that lets users communicate with a device. The adb command facilitates a variety of device actions, such as installing and debugging apps.
LambdaTest provides support for limited commands which can be executed in your app automation test scripts via javascript executors. The following command with the below mentioned parameters need to be used to execute adb command with LambdaTest real device cloud.
driver.execute_script("lambda-adb", params)
Supported Commands
Swipe
adb shell input swipe
The command is used to generate a swipe gesture by defining the coordinates of starting and ending point of the swipe. The following is a Python sample of using the adb swipe command with LambdaTest executor.
params = {"command":"input-swipe", "startX":200,"startY":900,"endX": 200,"endY":300}
result = driver.execute_script("lambda-adb",params)
Clipboard
adb shell input sendKeys
The command is used to sends text as if typed at the keyboard in the real devices. The following is a Python sample of using the adb sendKeys command with LambdaTest executor.
params = {"command":"input-text", "text":"this is my text"}
result = driver.execute_script("lambda-adb",params)
Home Button
- Navigate to the home screen
The command is used to navigate to the home screen of the device while running an app automation test script. The following is a Python sample of using the adb command to navigate to the home screen with LambdaTest executor.
params = {"command":"keyevent", "keycode":3}
result = driver.execute_script("lambda-adb",params)
Enable/Disable auto rotate
- enableAutoRotate
The command is used to auto rotate the screen of the device while running an app automation test script. The following is a Python sample using the adb command to allow auto rotation with LambdaTest executor.
params = {"command":"autorotate", "enableAutoRotate": True}
result = driver.execute_script("lambda-adb",params)
ADB Shell Command
- adb shell dumpsys
This command is used to obtain detailed information about installed packages on device. When you run this command, it provides a list of information for each package installed on the device. The output includes various details about each package.The following is a Python sample using the adb command:
params = {"command": "shell", "text": "dumpsys package <package_info>"}
result = driver.execute_script("lambda-adb",params)
Enable/Disable Notification
- enableNotification
These commands enable or disable your app notifications on the device based on the value provided for enableNotification
. True is used to enable notifications, while False is used to disable them.The following is a Python sample using the adb command with LambdaTest executor:
params = {"command": "enable-notification", "enableNotification":True/False}
result = driver.execute_script("lambda-adb",params)
- These commands are compatible with Android versions 13 and above.
- When you disable app notification permissions using the command, the app go into the background. This behavior occurs due to limitations with ADB, and you need to reactivate the app through test script.
Enable/Disable Battery Optimization
- disableBatteryOptimization
This command is used to enable or disable battery optimization for your app on the device. The following is a Python sample using the adb command to disable battery optimization with LambdaTest executor:
params = {"command":"disable-battery-optimization", "disableBatteryOptimization":True/False}
result = driver.execute_script("lambda-adb",params)
Fixed-to-User Rotation
- fixedToUserRotation
This command serves to lock the screen rotation in alignment with the app's default behavior and user-defined settings. Below is a Python example utilizing the adb command to enforce fixed screen rotation with the LambdaTest executor:
params = {"command":"fixed-to-user-rotation", "fixedToUserRotation":True}
result = driver.execute_script("lambda-adb",params)