Skip to content

Modules.CoreMotion.DeviceMotion

Allows Titanium client applications to access CoreMotion's DeviceMotion APIs.

Extends: Titanium.Proxy · Since: 5.2.0 · Platforms: iphone, ipad

Methods #

availableAttitudeReferenceFrames #

Returns a bitmask specifying the available attitude reference frames on the device.

A bitmask that you can bitwise-AND with the ATTITUDE_REFERENCE constants.

For example to determine if ATTITUDE_REFERENCE_FRAME_X_MAGNETIC_NORTH_Z_VERTICAL is available on device.

var frames = CoreMotion.DeviceMotion.availableAttitudeReferenceFrames();
if (frames & CoreMotion.ATTITUDE_REFERENCE_FRAME_X_MAGNETIC_NORTH_Z_VERTICAL) {
    // do something here
}

Returns: Number

getAttitudeReferenceFrame #

Returns either the reference frame currently being used or the default
attitude reference frame.

If device motion is active, this property returns the reference frame currently in use.
If device motion is not active but has been active since the app was last launched,
this property returns the last frame used. If device motion has not been active since
the app was last launched, this property returns the default attitude reference frame
for the device.
Possible reference frames include
Modules.CoreMotion.ATTITUDE_REFERENCE_FRAME_X_ARBITRARY_Z_VERTICAL,
Modules.CoreMotion.ATTITUDE_REFERENCE_FRAME_X_ARBITRARY_CORRECTED_Z_VERTICAL,
Modules.CoreMotion.ATTITUDE_REFERENCE_FRAME_X_MAGNETIC_NORTH_Z_VERTICAL, and
Modules.CoreMotion.ATTITUDE_REFERENCE_FRAME_X_TRUE_NORTH_Z_VERTICAL.

Returns: Number

getDeviceMotion #

Returns the latest sample of device-motion data.

An app that is receiving device-motion data after calling
Modules.CoreMotion.DeviceMotion.startDeviceMotionUpdatesUsingReferenceFrame or
Modules.CoreMotion.DeviceMotion.startDeviceMotionUpdates with no callback, need to periodically
check the value returned by this method and process the device-motion data.

Returns: CoreMotionDeviceMotionData

isDeviceMotionActive #

Returns a Boolean value that determines whether the app is receiving updates from the device-motion service.

Returns: Boolean

isDeviceMotionAvailable #

Returns a Boolean indicating whether device-motion is available on the device.

Returns: Boolean

setDeviceMotionUpdateInterval #

The interval in milliseconds, for providing device-motion updates to the callback.

The system supplies device-motion updates to the callback passed to
Modules.CoreMotion.DeviceMotion.startDeviceMotionUpdatesUsingReferenceFrame or
Modules.CoreMotion.DeviceMotion.startDeviceMotionUpdates at regular intervals
determined by the value passed to this method. The interval units
are in milliseconds. The value of this property is capped to minimum
and maximum values; the maximum value is determined by the maximum
frequency supported by the hardware. If your app is sensitive to the
intervals of device-motion data, it should always check the timestamps
of the delivered device-motion event to determine the true update interval.

Parameters:
NameTypeSummaryOptional
intervalNumberThe interval in millisecondsNo

setShowsDeviceMovementDisplay #

Controls whether the device-movement display is shown.

When a device requires movement (for example, to calibrate the compass), the value of
this property indicates if the system's device-movement display should be shown.
When a device requires movement, the callback for
Modules.CoreMotion.DeviceMotion.setDeviceMotionUpdateInterval or
Modules.CoreMotion.DeviceMotion.startDeviceMotionUpdatesUsingReferenceFrame reports
the Modules.CoreMotion.ERROR_DEVICE_REQUIRES_MOVEMENT error once. By default,
this is set to false.

Parameters:
NameTypeSummaryOptional
showBooleanBoolean indicating if the display should be shownNo

startDeviceMotionUpdates #

Starts device-motion updates.

If a callback is passed to this method, it will be called whenever there is an update.
The frequency of these updates can be controlled using the
Modules.CoreMotion.DeviceMotion.setDeviceMotionUpdateInterval method.
If no callback is passed, the device-motion data can be accessed using the
Modules.CoreMotion.DeviceMotion.getDeviceMotion method. To stop the delivery of events,
call the Modules.CoreMotion.DeviceMotion.stopDeviceMotionUpdates method.

Parameters:
NameTypeSummaryOptional
callbackCallback<CoreMotionDeviceMotionDataWithSuccess>The method to be called when there is an update.Yes

startDeviceMotionUpdatesUsingReferenceFrame #

Starts device-motion updates using a reference frame.

If a callback is passed to this method, it will be called whenever there is an update.
The frequency of these updates can be controlled using the
Modules.CoreMotion.DeviceMotion.setDeviceMotionUpdateInterval method.
If no callback is passed, the device-motion data can be accessed using the
Modules.CoreMotion.DeviceMotion.getDeviceMotion method. To stop the delivery of events,
call the Modules.CoreMotion.DeviceMotion.stopDeviceMotionUpdates method.

Parameters:
NameTypeSummaryOptional
argsCoreMotionReferenceFrameArgsThe arguments passed to this methodNo
callbackCallback<CoreMotionDeviceMotionDataWithSuccess>The method to be called when there is an update.Yes

stopDeviceMotionUpdates #

Stops device-motion updates.

Titanium SDK Documentation