See how Capacitor fits into the entire Ionic Ecosystem ->
Capacitor is part of the Ionic Ecosystem ->

@capacitor/app

The App API handles high level App state and events.For example, this API emits events when the app enters and leaves the foreground, handles deeplinks, opens other apps, and manages persisted plugin state.

Install

npm install @capacitor/app
npx cap sync

API

exitApp()

exitApp() => never

Force exit the app. This should only be used in conjunction with the backButton handler for Android to exit the app when navigation is complete.

Ionic handles this itself so you shouldn’t need to call this if using Ionic.

Returns: never

Since: 1.0.0


getInfo()

getInfo() => Promise<AppInfo>

Return information about the app.

Returns: Promise<AppInfo>

Since: 1.0.0


getState()

getState() => Promise<AppState>

Gets the current app state.

Returns: Promise<AppState>

Since: 1.0.0


getLaunchUrl()

getLaunchUrl() => Promise<AppLaunchUrl>

Get the URL the app was launched with, if any.

Returns: Promise<AppLaunchUrl>

Since: 1.0.0


addListener(…)

addListener(eventName: 'appStateChange', listenerFunc: (state: AppState) => void) => PluginListenerHandle

Listen for changes in the App’s active state (whether the app is in the foreground or background)

Param Type
eventName "appStateChange"
listenerFunc (state: AppState) => void

Returns: PluginListenerHandle

Since: 1.0.0


addListener(…)

addListener(eventName: 'appUrlOpen', listenerFunc: (data: AppUrlOpen) => void) => PluginListenerHandle

Listen for url open events for the app. This handles both custom URL scheme links as well as URLs your app handles (Universal Links on iOS and App Links on Android)

Param Type
eventName "appUrlOpen"
listenerFunc (data: AppUrlOpen) => void

Returns: PluginListenerHandle

Since: 1.0.0


addListener(…)

addListener(eventName: 'appRestoredResult', listenerFunc: (data: AppRestoredResult) => void) => PluginListenerHandle

If the app was launched with previously persisted plugin call data, such as on Android when an activity returns to an app that was closed, this call will return any data the app was launched with, converted into the form of a result from a plugin call.

Param Type
eventName "appRestoredResult"
listenerFunc (data: AppRestoredResult) => void

Returns: PluginListenerHandle

Since: 1.0.0


addListener(…)

addListener(eventName: 'backButton', listenerFunc: () => void) => PluginListenerHandle

Listen for the hardware back button event (Android only). Listening for this event will disable the default back button behaviour, so you might want to call window.history.back() manually. If you want to close the app, call App.exitApp().

Param Type
eventName "backButton"
listenerFunc () => void

Returns: PluginListenerHandle

Since: 1.0.0


removeAllListeners()

removeAllListeners() => void

Remove all native listeners for this plugin

Since: 1.0.0


Interfaces

AppInfo

Prop Type Description Since
name string The name of the app. 1.0.0
id string The identifier of the app. On iOS it’s the Bundle Identifier. On Android it’s the Application ID 1.0.0
build string The build version. On iOS it’s the CFBundleVersion. On Android it’s the versionCode. 1.0.0
version string The app version. On iOS it’s the CFBundleShortVersionString. On Android it’s package’s versionName. 1.0.0

AppState

Prop Type Description Since
isActive boolean Whether the app is active or not. 1.0.0

AppLaunchUrl

Prop Type Description Since
url string The url used to open the app. 1.0.0

PluginListenerHandle

Prop Type
remove () => void

AppUrlOpen

Prop Type Description Since
url string The URL the app was opened with. 1.0.0
iosSourceApplication any The source application opening the app (iOS only) https://developer.apple.com/documentation/uikit/uiapplicationopenurloptionskey/1623128-sourceapplication 1.0.0
iosOpenInPlace boolean Whether the app should open the passed document in-place or must copy it first. https://developer.apple.com/documentation/uikit/uiapplicationopenurloptionskey/1623123-openinplace 1.0.0

AppRestoredResult

Prop Type Description Since
pluginId string The pluginId this result corresponds to. For example, Camera. 1.0.0
methodName string The methodName this result corresponds to. For example, getPhoto 1.0.0
data any The result data passed from the plugin. This would be the result you’d expect from normally calling the plugin method. For example, CameraPhoto 1.0.0
success boolean Boolean indicating if the plugin call succeeded. 1.0.0
error { message: string; } If the plugin call didn’t succeed, it will contain the error message. 1.0.0
Previous
<- Action Sheet
Next
App Launcher ->
Contribute ->