webdriver.extensions.android package¶
Submodules¶
webdriver.extensions.android.activities module¶
-
class
webdriver.extensions.android.activities.Activities(command_executor='http://127.0.0.1:4444/wd/hub', desired_capabilities=None, browser_profile=None, proxy=None, keep_alive=False, file_detector=None, options=None)¶ Bases:
selenium.webdriver.remote.webdriver.WebDriver-
property
current_activity¶ Retrieves the current activity running on the device.
- Returns
The current activity name running on the device
- Return type
str
-
start_activity(app_package: str, app_activity: str, **opts: str) → T¶ Opens an arbitrary activity during a test. If the activity belongs to another application, that application is started and the activity is opened.
This is an Android-only method.
- Parameters
app_package (str) – The package containing the activity to start.
app_activity (str) – The activity to start.
- Keyword Arguments
app_wait_package (str) – Begin automation after this package starts.
app_wait_activity (str) – Begin automation after this activity starts.
intent_action (str) – Intent to start.
intent_category (str) – Intent category to start.
intent_flags (str) – Flags to send to the intent.
optional_intent_arguments (str) – Optional arguments to the intent.
dont_stop_app_on_reset (str) – Should the app be stopped on reset?
-
wait_activity(activity: str, timeout: int, interval: int = 1) → bool¶ Wait for an activity: block until target activity presents or time out.
This is an Android-only method.
- Parameters
activity (str) – target activity
timeout (int) – max wait time, in seconds
interval (int) – sleep interval between retries, in seconds
- Returns
True if the target activity is shown
- Return type
bool
-
property
webdriver.extensions.android.common module¶
-
class
webdriver.extensions.android.common.Common(command_executor='http://127.0.0.1:4444/wd/hub', desired_capabilities=None, browser_profile=None, proxy=None, keep_alive=False, file_detector=None, options=None)¶ Bases:
selenium.webdriver.remote.webdriver.WebDriver-
property
current_package¶ Retrieves the current package running on the device.
-
end_test_coverage(intent: str, path: str) → Any¶ Ends the coverage collection and pull the coverage.ec file from the device.
Android only. See https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/android/android-coverage.md
- Parameters
intent (str) – description of operation to be performed
path (str) – path to coverage.ec file to be pulled from the device
- Returns
TODO
-
open_notifications() → T¶ Open notification shade in Android (API Level 18 and above)
- Returns
appium.webdriver.webdriver.WebDriver
-
property
webdriver.extensions.android.display module¶
-
class
webdriver.extensions.android.display.Display(command_executor='http://127.0.0.1:4444/wd/hub', desired_capabilities=None, browser_profile=None, proxy=None, keep_alive=False, file_detector=None, options=None)¶ Bases:
selenium.webdriver.remote.webdriver.WebDriver-
get_display_density() → int¶ Get the display density, Android only
- Returns
The display density of the Android device(dpi)
- Return type
int
- Usage:
self.driver.get_display_density()
-
webdriver.extensions.android.gsm module¶
-
class
webdriver.extensions.android.gsm.Gsm(command_executor='http://127.0.0.1:4444/wd/hub', desired_capabilities=None, browser_profile=None, proxy=None, keep_alive=False, file_detector=None, options=None)¶ Bases:
selenium.webdriver.remote.webdriver.WebDriver-
make_gsm_call(phone_number: str, action: str) → T¶ Make GSM call (Emulator only)
Android only.
- Parameters
phone_number (str) – The phone number to call to.
action (str) – The call action. A member of the const appium.webdriver.extensions.android.gsm.GsmCallActions
- Usage
self.driver.make_gsm_call(‘5551234567’, GsmCallActions.CALL)
-
set_gsm_signal(strength: int) → T¶ Set GSM signal strength (Emulator only)
Android only.
- Parameters
strength (int) – Signal strength. A member of the enum appium.webdriver.extensions.android.gsm.GsmSignalStrength
- Usage:
self.driver.set_gsm_signal(GsmSignalStrength.GOOD)
-
set_gsm_voice(state: str) → T¶ Set GSM voice state (Emulator only)
Android only.
- Parameters
state (str) – State of GSM voice. A member of the const appium.webdriver.extensions.android.gsm.GsmVoiceState
- Usage:
self.driver.set_gsm_voice(GsmVoiceState.HOME)
-
-
class
webdriver.extensions.android.gsm.GsmCallActions¶ Bases:
object-
ACCEPT= 'accept'¶
-
CALL= 'call'¶
-
CANCEL= 'cancel'¶
-
HOLD= 'hold'¶
-
webdriver.extensions.android.nativekey module¶
-
class
webdriver.extensions.android.nativekey.AndroidKey¶ Bases:
object-
A= 29¶
-
ALT_LEFT= 57¶
-
ALT_RIGHT= 58¶
-
APOSTROPHE= 75¶
-
APP_SWITCH= 187¶
-
ASSIST= 219¶
-
AT= 77¶
-
AVR_INPUT= 182¶
-
AVR_POWER= 181¶
-
B= 30¶
-
BACK= 4¶
-
BACKSLASH= 73¶
-
BOOKMARK= 174¶
-
BREAK= 121¶
-
BRIGHTNESS_DOWN= 220¶
-
BRIGHTNESS_UP= 221¶
-
BUTTON_1= 188¶
-
BUTTON_10= 197¶
-
BUTTON_11= 198¶
-
BUTTON_12= 199¶
-
BUTTON_13= 200¶
-
BUTTON_14= 201¶
-
BUTTON_15= 202¶
-
BUTTON_16= 203¶
-
BUTTON_2= 189¶
-
BUTTON_3= 190¶
-
BUTTON_4= 191¶
-
BUTTON_5= 192¶
-
BUTTON_6= 193¶
-
BUTTON_7= 194¶
-
BUTTON_8= 195¶
-
BUTTON_9= 196¶
-
BUTTON_A= 96¶
-
BUTTON_B= 97¶
-
BUTTON_C= 98¶
-
BUTTON_L1= 102¶
-
BUTTON_L2= 104¶
-
BUTTON_MODE= 110¶
-
BUTTON_R1= 103¶
-
BUTTON_R2= 105¶
-
BUTTON_SELECT= 109¶
-
BUTTON_START= 108¶
-
BUTTON_THUMBL= 106¶
-
BUTTON_THUMBR= 107¶
-
BUTTON_X= 99¶
-
BUTTON_Y= 100¶
-
BUTTON_Z= 101¶
-
C= 31¶
-
CALCULATOR= 210¶
-
CALENDAR= 208¶
-
CALL= 5¶
-
CAMERA= 27¶
-
CAPS_LOCK= 115¶
-
CAPTIONS= 175¶
-
CHANNEL_DOWN= 167¶
-
CHANNEL_UP= 166¶
-
CLEAR= 28¶
-
COMMA= 55¶
-
CONTACTS= 207¶
-
COPY= 278¶
-
CTRL_LEFT= 113¶
-
CTRL_RIGHT= 114¶
-
CUT= 277¶
-
D= 32¶
-
DEL= 67¶
-
DIGIT_0= 7¶
-
DIGIT_1= 8¶
-
DIGIT_2= 9¶
-
DIGIT_3= 10¶
-
DIGIT_4= 11¶
-
DIGIT_5= 12¶
-
DIGIT_6= 13¶
-
DIGIT_7= 14¶
-
DIGIT_8= 15¶
-
DIGIT_9= 16¶
-
DPAD_CENTER= 23¶
-
DPAD_DOWN= 20¶
-
DPAD_DOWN_LEFT= 269¶
-
DPAD_DOWN_RIGHT= 271¶
-
DPAD_LEFT= 21¶
-
DPAD_RIGHT= 22¶
-
DPAD_UP= 19¶
-
DPAD_UP_LEFT= 268¶
-
DPAD_UP_RIGHT= 270¶
-
DVR= 173¶
-
E= 33¶
-
EISU= 212¶
-
ENDCALL= 6¶
-
ENTER= 66¶
-
ENVELOPE= 65¶
-
EQUALS= 70¶
-
ESCAPE= 111¶
-
EXPLORER= 64¶
-
F= 34¶
-
F1= 131¶
-
F10= 140¶
-
F11= 141¶
-
F12= 142¶
-
F2= 132¶
-
F3= 133¶
-
F4= 134¶
-
F5= 135¶
-
F6= 136¶
-
F7= 137¶
-
F8= 138¶
-
F9= 139¶
-
FOCUS= 80¶
-
FORWARD= 125¶
-
FORWARD_DEL= 112¶
-
FUNCTION= 119¶
-
G= 35¶
-
GRAVE= 68¶
-
GUIDE= 172¶
-
H= 36¶
-
HEADSETHOOK= 79¶
-
HELP= 259¶
-
HENKAN= 214¶
-
HOME= 3¶
-
I= 37¶
-
INFO= 165¶
-
INSERT= 124¶
-
J= 38¶
-
K= 39¶
-
KANA= 218¶
-
KATAKANA_HIRAGANA= 215¶
-
KEYCODE_ZOOM_IN= 168¶
-
KEYCODE_ZOOM_OUT= 169¶
-
KEY_11= 227¶
-
KEY_12= 228¶
-
L= 40¶
-
LANGUAGE_SWITCH= 204¶
-
LAST_CHANNEL= 229¶
-
LEFT_BRACKET= 71¶
-
M= 41¶
-
MANNER_MODE= 205¶
-
MEDIA_AUDIO_TRACK= 222¶
-
MEDIA_CLOSE= 128¶
-
MEDIA_EJECT= 129¶
-
MEDIA_FAST_FORWARD= 90¶
-
MEDIA_NEXT= 87¶
-
MEDIA_PAUSE= 127¶
-
MEDIA_PLAY= 126¶
-
MEDIA_PLAY_PAUSE= 85¶
-
MEDIA_PREVIOUS= 88¶
-
MEDIA_RECORD= 130¶
-
MEDIA_REWIND= 89¶
-
MEDIA_SKIP_BACKWARD= 273¶
-
MEDIA_SKIP_FORWARD= 272¶
-
MEDIA_STEP_BACKWARD= 275¶
-
MEDIA_STEP_FORWARD= 274¶
-
MEDIA_STOP= 86¶
-
MEDIA_TOP_MENU= 226¶
-
MENU= 82¶
-
META_LEFT= 117¶
-
META_RIGHT= 118¶
-
MINUS= 69¶
-
MODE_3D= 206¶
-
MOVE_END= 123¶
-
MOVE_HOME= 122¶
-
MUHENKAN= 213¶
-
MUSIC= 209¶
-
MUTE= 91¶
-
N= 42¶
-
NAVIGATE_IN= 262¶
-
NAVIGATE_NEXT= 261¶
-
NAVIGATE_OUT= 263¶
-
NAVIGATE_PREVIOUS= 260¶
-
NOTIFICATION= 83¶
-
NUM= 78¶
-
NUMPAD_0= 144¶
-
NUMPAD_1= 145¶
-
NUMPAD_2= 146¶
-
NUMPAD_3= 147¶
-
NUMPAD_4= 148¶
-
NUMPAD_5= 149¶
-
NUMPAD_6= 150¶
-
NUMPAD_7= 151¶
-
NUMPAD_8= 152¶
-
NUMPAD_9= 153¶
-
NUMPAD_ADD= 157¶
-
NUMPAD_COMMA= 159¶
-
NUMPAD_DIVIDE= 154¶
-
NUMPAD_DOT= 158¶
-
NUMPAD_ENTER= 160¶
-
NUMPAD_EQUALS= 161¶
-
NUMPAD_LEFT_PAREN= 162¶
-
NUMPAD_MULTIPLY= 155¶
-
NUMPAD_RIGHT_PAREN= 163¶
-
NUMPAD_SUBTRACT= 156¶
-
NUM_LOCK= 143¶
-
O= 43¶
-
P= 44¶
-
PAGE_DOWN= 93¶
-
PAGE_UP= 92¶
-
PAIRING= 225¶
-
PERIOD= 56¶
-
PICTSYMBOLS= 94¶
-
PLUS= 81¶
-
POUND= 18¶
-
POWER= 26¶
-
PROG_BLUE= 186¶
-
PROG_GREEN= 184¶
-
PROG_RED= 183¶
-
PROG_YELLOW= 185¶
-
Q= 45¶
-
R= 46¶
-
RIGHT_BRACKET= 72¶
-
RO= 217¶
-
S= 47¶
-
SCROLL_LOCK= 116¶
-
SEARCH= 84¶
-
SEMICOLON= 74¶
-
SETTINGS= 176¶
-
SHIFT_LEFT= 59¶
-
SHIFT_RIGHT= 60¶
-
SLASH= 76¶
-
SLEEP= 223¶
-
SOFT_LEFT= 1¶
-
SOFT_RIGHT= 2¶
-
SOFT_SLEEP= 276¶
-
SPACE= 62¶
-
STAR= 17¶
-
STB_INPUT= 180¶
-
STB_POWER= 179¶
-
STEM_1= 265¶
-
STEM_2= 266¶
-
STEM_3= 267¶
-
STEM_PRIMARY= 264¶
-
SWITCH_CHARSET= 95¶
-
SYM= 63¶
-
SYSRQ= 120¶
-
T= 48¶
-
TAB= 61¶
-
TV= 170¶
-
TV_ANTENNA_CABLE= 242¶
-
TV_AUDIO_DESCRIPTION= 252¶
-
TV_AUDIO_DESCRIPTION_MIX_DOWN= 254¶
-
TV_AUDIO_DESCRIPTION_MIX_UP= 253¶
-
TV_CONTENTS_MENU= 256¶
-
TV_DATA_SERVICE= 230¶
-
TV_INPUT= 178¶
-
TV_INPUT_COMPONENT_1= 249¶
-
TV_INPUT_COMPONENT_2= 250¶
-
TV_INPUT_COMPOSITE_1= 247¶
-
TV_INPUT_COMPOSITE_2= 248¶
-
TV_INPUT_HDMI_1= 243¶
-
TV_INPUT_HDMI_2= 244¶
-
TV_INPUT_HDMI_3= 245¶
-
TV_INPUT_HDMI_4= 246¶
-
TV_INPUT_VGA_1= 251¶
-
TV_MEDIA_CONTEXT_MENU= 257¶
-
TV_NETWORK= 241¶
-
TV_NUMBER_ENTRY= 234¶
-
TV_POWER= 177¶
-
TV_RADIO_SERVICE= 232¶
-
TV_SATELLITE= 237¶
-
TV_SATELLITE_BS= 238¶
-
TV_SATELLITE_CS= 239¶
-
TV_SATELLITE_SERVICE= 240¶
-
TV_TELETEXT= 233¶
-
TV_TERRESTRIAL_ANALOG= 235¶
-
TV_TERRESTRIAL_DIGITAL= 236¶
-
TV_TIMER_PROGRAMMING= 258¶
-
TV_ZOOM_MODE= 255¶
-
U= 49¶
-
UNKNOWN= 0¶
-
V= 50¶
-
VOICE_ASSIST= 231¶
-
VOLUME_DOWN= 25¶
-
VOLUME_MUTE= 164¶
-
VOLUME_UP= 24¶
-
W= 51¶
-
WAKEUP= 224¶
-
WINDOW= 171¶
-
X= 52¶
-
Y= 53¶
-
YEN= 216¶
-
Z= 54¶
-
ZENKAKU_HANKAKU= 211¶
-
static
is_confirm_key(code: int) → bool¶ Returns true if the key will, by default, trigger a click on the focused view.
Returns true if the specified nativekey is a gamepad button.
-
static
is_media_key(code: int) → bool¶ Returns true if this key is a media key, which can be send to apps that are interested in media key events.
-
static
is_system_key(code: int) → bool¶ Returns true if the key is a system key, System keys can not be used for menu shortcuts.
-
static
is_wake_key(code: int) → bool¶ Returns true if the key is a wake key.
-
webdriver.extensions.android.network module¶
-
class
webdriver.extensions.android.network.NetSpeed¶ Bases:
object-
EDGE= 'edge'¶
-
EVDO= 'evdo'¶
-
FULL= 'full'¶
-
GPRS= 'gprs'¶
-
GSM= 'gsm'¶
-
HSDPA= 'hsdpa'¶
-
LTE= 'lte'¶
-
SCSD= 'scsd'¶
-
UMTS= 'umts'¶
-
-
class
webdriver.extensions.android.network.Network(command_executor='http://127.0.0.1:4444/wd/hub', desired_capabilities=None, browser_profile=None, proxy=None, keep_alive=False, file_detector=None, options=None)¶ Bases:
selenium.webdriver.remote.webdriver.WebDriver-
property
network_connection¶ Returns an integer bitmask specifying the network connection type.
Android only. Possible values are available through the enumeration appium.webdriver.ConnectionType
-
set_network_connection(connection_type: int) → int¶ Sets the network connection type. Android only.
Possible values:
Value (Alias)
Data
Wifi
Airplane Mode
0 (None)
0
0
0
1 (Airplane Mode)
0
0
1
2 (Wifi only)
0
1
0
4 (Data only)
1
0
0
6 (All network on)
1
1
0
These are available through the enumeration appium.webdriver.ConnectionType
- Parameters
connection_type (int) – a member of the enum appium.webdriver.ConnectionType
- Returns
Set network connection type
- Return type
int
-
set_network_speed(speed_type: str) → T¶ Set the network speed emulation.
Android Emulator only.
- Parameters
speed_type (str) – The network speed type. A member of the const appium.webdriver.extensions.android.network.NetSpeed.
- Usage:
self.driver.set_network_speed(NetSpeed.LTE)
- Returns
appium.webdriver.webdriver.WebDriver
-
toggle_wifi() → T¶ Toggle the wifi on the device, Android only.
- Returns
appium.webdriver.webdriver.WebDriver
-
property
webdriver.extensions.android.performance module¶
-
class
webdriver.extensions.android.performance.Performance(command_executor='http://127.0.0.1:4444/wd/hub', desired_capabilities=None, browser_profile=None, proxy=None, keep_alive=False, file_detector=None, options=None)¶ Bases:
selenium.webdriver.remote.webdriver.WebDriver-
get_performance_data(package_name: str, data_type: str, data_read_timeout: int = None) → List[List[str]]¶ Returns the information of the system state which is supported to read as like cpu, memory, network traffic, and battery.
Android only.
- Parameters
package_name (str) – The package name of the application
data_type (str) – The type of system state which wants to read. It should be one of the supported performance data types. Check
get_performance_data_types()for supported typesdata_read_timeout (
int, optional) – The number of attempts to read
- Usage:
self.driver.get_performance_data(‘my.app.package’, ‘cpuinfo’, 5)
- Returns
The data along to data_type
- Return type
list
-
get_performance_data_types() → List¶ Returns the information types of the system state which is supported to read as like cpu, memory, network traffic, and battery. Android only.
- Usage:
self.driver.get_performance_data_types()
- Returns
Available data types
- Return type
list
-
webdriver.extensions.android.power module¶
-
class
webdriver.extensions.android.power.Power(command_executor='http://127.0.0.1:4444/wd/hub', desired_capabilities=None, browser_profile=None, proxy=None, keep_alive=False, file_detector=None, options=None)¶ Bases:
selenium.webdriver.remote.webdriver.WebDriver-
AC_OFF= 'off'¶
-
AC_ON= 'on'¶
-
set_power_ac(ac_state: str) → T¶ Emulate power state change on the connected emulator.
Android only.
- Parameters
ac_state (str) – The power ac state to be set. Use .AC_OFF, .AC_ON
- Usage:
self.driver.set_power_ac(Power.AC_OFF)
self.driver.set_power_ac(Power.AC_ON)
- Returns
appium.webdriver.webdriver.WebDriver
-
set_power_capacity(percent: int) → T¶ Emulate power capacity change on the connected emulator.
Android only.
- Parameters
percent (int) – The power capacity to be set. Can be set from 0 to 100
- Usage:
self.driver.set_power_capacity(50)
- Returns
appium.webdriver.webdriver.WebDriver
-
webdriver.extensions.android.sms module¶
-
class
webdriver.extensions.android.sms.Sms(command_executor='http://127.0.0.1:4444/wd/hub', desired_capabilities=None, browser_profile=None, proxy=None, keep_alive=False, file_detector=None, options=None)¶ Bases:
selenium.webdriver.remote.webdriver.WebDriver-
send_sms(phone_number: str, message: str) → T¶ Emulate send SMS event on the connected emulator.
Android only.
- Parameters
phone_number (str) – The phone number of message sender
message (str) – The message to send
- Usage:
self.driver.send_sms(‘555-123-4567’, ‘Hey lol’)
- Returns
appium.webdriver.webdriver.WebDriver
-
webdriver.extensions.android.system_bars module¶
-
class
webdriver.extensions.android.system_bars.SystemBars(command_executor='http://127.0.0.1:4444/wd/hub', desired_capabilities=None, browser_profile=None, proxy=None, keep_alive=False, file_detector=None, options=None)¶ Bases:
selenium.webdriver.remote.webdriver.WebDriver-
get_system_bars() → Dict[str, Dict[str, Union[int, bool]]]¶ Retrieve visibility and bounds information of the status and navigation bars.
Android only.
- Returns
- A dictionary whose keys are
statusBar - visible - x - y - width - height
navigationBar - visible - x - y - width - height
-