@ohos.stationary (Device Status Awareness Framework)
The stationary module provides APIs to report the device status, including absolute still and relative still.
NOTE
The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version.
This module does not support x86 emulators.
Modules to Import
import stationary from '@ohos.stationary'
ActivityResponse
Defines the response interface to receive the device status.
System capability: SystemCapability.Msdp.DeviceStatus.Stationary
Attributes
Name | Type | Readable | Writable | Description |
---|---|---|---|---|
state | ActivityState | Yes | No | New device status. |
ActivityType
Enumerates the device status types.
System capability: SystemCapability.Msdp.DeviceStatus.Stationary
Name | Description |
---|---|
still | Absolutely still. |
relativeStill | Relatively still. |
ActivityEvent
Enumerates the device status events.
System capability: SystemCapability.Msdp.DeviceStatus.Stationary
Name | Value | Description |
---|---|---|
ENTER | 1 | Event indicating entering device status. |
EXIT | 2 | Event indicating exiting device status. |
ENTER_EXIT | 3 | Event indicating entering and exiting device status. |
ActivityState
Enumerates the device statuses.
System capability: SystemCapability.Msdp.DeviceStatus.Stationary
Name | Value | Description |
---|---|---|
ENTER | 1 | Entering device status. |
EXIT | 2 | Exiting device status. |
## stationary.on('still' | 'relativeStill') |
on(activity: ActivityType, event: ActivityEvent, reportLatencyNs: number, callback: Callback<ActivityResponse>): void
Subscribes to the device status.
System capability: SystemCapability.Msdp.DeviceStatus.Stationary
Parameters
Parameter Name | Type | Mandatory | Description |
---|---|---|---|
activity | ActivityType | Yes | Device status type. |
event | ActivityEvent | Yes | Event type. |
reportLatencyNs | number | Yes | Event reporting period. |
callback | Callback<ActivityResponse> | Yes | Callback used to receive reported data. |
Example
var reportLatencyNs = 100;
stationary.on('still', stationary.ActivityEvent.ENTER, reportLatencyNs, (data) => {
console.log('data='+ JSON.stringify(data));
})
stationary.once('still' | 'relativeStill')
once(activity: ActivityType, callback: Callback<ActivityResponse>): void
Obtains the device status.
System capability: SystemCapability.Msdp.DeviceStatus.Stationary
Parameters
Parameter Name | Type | Mandatory | Description |
---|---|---|---|
activity | ActivityType | Yes | Device status type. |
callback | Callback<ActivityResponse> | Yes | Callback used to receive reported data. |
Example
stationary.once('still', (data) => {
console.log("data="+ JSON.stringify(data));
})
stationary.off('still' | 'relativeStill')
off(activity: ActivityType, event: ActivityEvent, callback?: Callback<ActivityResponse>): void
Unsubscribes from the device status.
System capability: SystemCapability.Msdp.DeviceStatus.Stationary
Parameters
Parameter Name | Type | Mandatory | Description |
---|---|---|---|
activity | ActivityType | Yes | Device status type. |
event | ActivityEvent | Yes | Event type. |
callback | Callback<ActivityResponse> | No | Callback used to receive reported data. |
Example
stationary.off('still', stationary.ActivityEvent.ENTER);