Edit this Doc Get app state

Get the given app status on the device

Example Usage

driver.queryAppState('com.apple.Preferences');
driver.queryAppState('io.appium.android.apis');

driver.query_app_state('com.apple.Preferences')
driver.query_app_state('io.appium.android.apis')

// webdriver.io example
// Supports only `mobile: queryAppState` for iOS, XCUITest

// wd example
// Supports only `mobile: queryAppState` for iOS, XCUITest

# ruby_lib example
app_state('com.apple.Preferences')
query_app_state('io.appium.android.apis') # `query_` prefix is also available

# ruby_lib_core example
@driver.app_state('com.apple.Preferences')
@driver.query_app_state('io.appium.android.apis') # `query_` prefix is also available

// Supports only `mobile: queryAppState` for iOS, XCUITest

// Supports only `mobile: queryAppState` for iOS, XCUITest

Description

iOS tests with XCUITest can also use the mobile: queryAppState method. See detailed documentation.

Support

Appium Server

Platform Driver Platform Versions Appium Version Driver Version
iOS XCUITest 9.3+ 1.6.0+ All
UIAutomation None None None
Android Espresso ?+ 1.9.0+ All
UiAutomator2 ?+ 1.6.0+ All
UiAutomator 4.2+ All All
Mac Mac None None None
Windows Windows None None None

Appium Clients

Language Support Documentation
Java All appium.github.io
Python All github.com
Javascript (WebdriverIO) All
Javascript (WD) All github.com
Ruby All www.rubydoc.info
PHP All github.com
C# All github.com

HTTP API Specifications

Endpoint

GET /wd/hub/session/:session_id/appium/device/app_state

URL Parameters

name description
session_id ID of the session to route the command to

JSON Parameters

name type description
bundleId or appId string BundleId for iOS. Package name for Android.

Response

Current the target app status. (Clients wrap the response properly) 0 is not installed. 1 is not running. 2 is running in background or suspended. 3 is running in background. 4 is running in foreground. (number)

See Also