Module: Appium::Core::Android::Device
- Extended by:
- Forwardable
- Defined in:
- lib/appium_lib_core/android/device.rb,
lib/appium_lib_core/android/device/screen.rb,
lib/appium_lib_core/android/device/network.rb,
lib/appium_lib_core/android/device/emulator.rb,
lib/appium_lib_core/android/device/clipboard.rb,
lib/appium_lib_core/android/device/performance.rb,
lib/appium_lib_core/android/device/auth_finger_print.rb
Defined Under Namespace
Modules: Authentication, Clipboard, Emulator, Network, Performance, Screen
Class Method Summary collapse
Instance Method Summary collapse
-
#current_activity ⇒ String
Get current activity name.
-
#current_package ⇒ String
Get current package name.
-
#end_coverage(path, intent) ⇒ Object
Android only; Ends the test coverage and writes the results to the given path on device.
-
#finger_print(finger_id) ⇒ Object
Authenticate users by using their finger print scans on supported emulators.
-
#get_clipboard(content_type: :plaintext) ⇒ Object
Set the content of device’s clipboard.
-
#get_display_density ⇒ Integer
Get connected device’s density.
-
#get_network_connection ⇒ Object
Get the device network connection current status See set_network_connection method for return value Same as #network_connection_type in selenium-webdriver.
-
#get_performance_data(package_name: , data_type: , data_read_timeout: 1000) ⇒ Object
Get the resource usage information of the application.
-
#get_performance_data_types ⇒ Object
Get the information type of the system state which is supported to read such as cpu, memory, network, battery via adb commands.
-
#get_system_bars ⇒ String
Get system bar’s information.
-
#hide_keyboard(close_key = nil, strategy = nil) ⇒ Object
Hide the onscreen keyboard.
-
#open_notifications ⇒ Object
Open Android notifications.
-
#set_clipboard(content: , content_type: :plaintext, label: nil) ⇒ Object
Set the content of device’s clipboard.
-
#set_network_connection(mode) ⇒ Object
Set the device network connection mode Same as ‘#network_connection_type` in selenium-webdriver.
-
#start_activity(opts) ⇒ Object
Android only.
- #start_recording_screen(remote_path: nil, user: nil, pass: nil, method: 'PUT', force_restart: nil, video_size: nil, time_limit: '180', bit_rate: '4000000', bug_report: nil) ⇒ Object
-
#toggle_airplane_mode ⇒ Object
Toggle flight mode on or off.
-
#toggle_data ⇒ Object
Switch the state of data service only for Android, and the device should be rooted.
-
#toggle_location_services ⇒ Object
Switch the state of the location service.
-
#toggle_wifi ⇒ Object
Switch the state of the wifi service only for Android.
Class Method Details
.extended(_mod) ⇒ Object
283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 |
# File 'lib/appium_lib_core/android/device.rb', line 283 def extended(_mod) ::Appium::Core::Device.extend_webdriver_with_forwardable ::Appium::Core::Device.add_endpoint_method(:open_notifications) do def open_notifications execute :open_notifications end end ::Appium::Core::Device.add_endpoint_method(:current_activity) do def current_activity execute :current_activity end end ::Appium::Core::Device.add_endpoint_method(:current_package) do def current_package execute :current_package end end ::Appium::Core::Device.add_endpoint_method(:get_system_bars) do def execute :get_system_bars end end ::Appium::Core::Device.add_endpoint_method(:toggle_location_services) do def toggle_location_services execute :toggle_location_services end end ::Appium::Core::Device.add_endpoint_method(:start_activity) do def start_activity(opts) raise 'opts must be a hash' unless opts.is_a? Hash option = {} app_package = opts[:app_package] raise 'app_package is required' unless app_package app_activity = opts[:app_activity] raise 'app_activity is required' unless app_activity option[:appPackage] = app_package option[:appActivity] = app_activity app_wait_package = opts.fetch(:app_wait_package, nil) app_wait_activity = opts.fetch(:app_wait_activity, nil) option[:appWaitPackage] = app_wait_package if app_wait_package option[:appWaitActivity] = app_wait_activity if app_wait_activity unknown_opts = opts.keys - %i(app_package app_activity app_wait_package app_wait_activity) raise "Unknown options #{unknown_opts}" unless unknown_opts.empty? execute :start_activity, {}, option end end # Android, Override included method in bridge ::Appium::Core::Device.add_endpoint_method(:hide_keyboard) do def hide_keyboard(close_key = nil, strategy = nil) option = {} option[:key] = close_key if close_key option[:strategy] = strategy if strategy execute :hide_keyboard, {}, option end end # Android, Override included method in bridge ::Appium::Core::Device.add_endpoint_method(:background_app) do def background_app(duration = 0) execute :background_app, {}, seconds: duration end end # TODO: TEST ME ::Appium::Core::Device.add_endpoint_method(:end_coverage) do def end_coverage(path, intent) execute :end_coverage, {}, path: path, intent: intent end end Screen.add_methods Performance.add_methods Network.add_methods Clipboard.add_methods Emulator.add_methods Authentication.add_methods end |
Instance Method Details
#current_activity ⇒ String
Get current activity name
|
# File 'lib/appium_lib_core/android/device.rb', line 38
|
#current_package ⇒ String
Get current package name
|
# File 'lib/appium_lib_core/android/device.rb', line 47
|
#end_coverage(path, intent) ⇒ Object
Android only; Ends the test coverage and writes the results to the given path on device.
|
# File 'lib/appium_lib_core/android/device.rb', line 141
|
#finger_print(finger_id) ⇒ Object
Authenticate users by using their finger print scans on supported emulators.
|
# File 'lib/appium_lib_core/android/device.rb', line 266
|
#get_clipboard(content_type: :plaintext) ⇒ Object
Set the content of device’s clipboard.
|
# File 'lib/appium_lib_core/android/device.rb', line 245
|
#get_display_density ⇒ Integer
Get connected device’s density.
|
# File 'lib/appium_lib_core/android/device.rb', line 65
|
#get_network_connection ⇒ Object
Get the device network connection current status See set_network_connection method for return value Same as #network_connection_type in selenium-webdriver.
Returns a key of {:airplane_mode: 1, wifi: 2, data: 4, all: 6, none: 0}
in #network_connection_type Returns a number of the mode in ‘#get_network_connection`
|
# File 'lib/appium_lib_core/android/device.rb', line 74
|
#get_performance_data(package_name: , data_type: , data_read_timeout: 1000) ⇒ Object
Get the resource usage information of the application. github.com/appium/appium-base-driver/blob/be29aec2318316d12b5c3295e924a5ba8f09b0fb/lib/mjsonwp/routes.js#L303
|
# File 'lib/appium_lib_core/android/device.rb', line 194
|
#get_performance_data_types ⇒ Object
Get the information type of the system state which is supported to read such as cpu, memory, network, battery via adb commands. github.com/appium/appium-base-driver/blob/be29aec2318316d12b5c3295e924a5ba8f09b0fb/lib/mjsonwp/routes.js#L300
|
# File 'lib/appium_lib_core/android/device.rb', line 184
|
#get_system_bars ⇒ String
Get system bar’s information
|
# File 'lib/appium_lib_core/android/device.rb', line 56
|
#hide_keyboard(close_key = nil, strategy = nil) ⇒ Object
Hide the onscreen keyboard
|
# File 'lib/appium_lib_core/android/device.rb', line 126
|
#open_notifications ⇒ Object
Open Android notifications
|
# File 'lib/appium_lib_core/android/device.rb', line 30
|
#set_clipboard(content: , content_type: :plaintext, label: nil) ⇒ Object
Set the content of device’s clipboard.
|
# File 'lib/appium_lib_core/android/device.rb', line 255
|
#set_network_connection(mode) ⇒ Object
Set the device network connection mode Same as ‘#network_connection_type` in selenium-webdriver.
Or the key matched with {:airplane_mode: 1, wifi: 2, data: 4, all: 6, none: 0}
Value (Alias) | Data | Wifi | Airplane Mode
-------------------------------------------------
1 (Airplane Mode) | 0 | 0 | 1
6 (All network on) | 1 | 1 | 0
4 (Data only) | 1 | 0 | 0
2 (Wifi only) | 0 | 1 | 0
0 (None) | 0 | 0 | 0
|
# File 'lib/appium_lib_core/android/device.rb', line 162
|
#start_activity(opts) ⇒ Object
Android only. Start a new activity within the current app or launch a new app and start the target activity.
|
# File 'lib/appium_lib_core/android/device.rb', line 147
|
#start_recording_screen(remote_path: nil, user: nil, pass: nil, method: 'PUT', force_restart: nil, video_size: nil, time_limit: '180', bit_rate: '4000000', bug_report: nil) ⇒ Object
|
# File 'lib/appium_lib_core/android/device.rb', line 206
|
#toggle_airplane_mode ⇒ Object
Toggle flight mode on or off
|
# File 'lib/appium_lib_core/android/device.rb', line 118
|
#toggle_data ⇒ Object
Switch the state of data service only for Android, and the device should be rooted
|
# File 'lib/appium_lib_core/android/device.rb', line 98
|
#toggle_location_services ⇒ Object
Switch the state of the location service
|
# File 'lib/appium_lib_core/android/device.rb', line 108
|
#toggle_wifi ⇒ Object
Switch the state of the wifi service only for Android
|
# File 'lib/appium_lib_core/android/device.rb', line 88
|