- 版本:0.1.7
- GitHub:
- NPM: https://npmjs.net.cn/package/nativescript-coremotion
- 下载量
- 昨天: 0
- 上周: 0
- 上个月: 0
NativeScript Core Motion 插件
NativeScript 的 Core Motion 插件
安装
tns plugin add nativescript-coremotion
用法
var Coremotion = require('nativescript-coremotion');
加速度计
isAccelerometerAvailable()
将返回一个布尔值,指示当前设备是否支持加速度计。
Coremotion.isAccelerometerAvailable()
isAccelerometerActive()
将返回一个布尔值,指示 Core Motion 是否目前正在返回加速度计数据。
Coremotion.isAccelerometerActive()
setAccelerometerUpdateInterval()
接受一个数字,允许更改以秒为单位的更新间隔。
Coremotion.setAccelerometerUpdateInterval(.2);
startAccelerometerUpdates()
接受一个回调,返回以下加速度
{x, y, z}
Coremotion.startAccelerometerUpdates(callback);
stopAccelerometerUpdates()
停止 Core Motion 发送加速度计更新。
Coremotion.stopAccelerometerUpdates()
陀螺仪
isGyroscopeAvailable()
将返回一个布尔值,指示当前设备是否支持陀螺仪。
Coremotion.isGyroscopeAvailable()
isGyroscopeActive()
将返回一个布尔值,指示 Core Motion 是否目前正在返回陀螺仪数据。
Coremotion.isGyroscopeActive()
setGyroscopeUpdateInterval()
接受一个数字,允许更改以秒为单位的更新间隔。
Coremotion.setGyroscopeUpdateInterval(.2);
startGyroscopeUpdates()
接受一个回调,返回以下旋转率
{x, y, z}
Coremotion.startGyroscopeUpdates(callback);
stopGyroscopeUpdates()
停止 Core Motion 发送陀螺仪更新。
Coremotion.stopGyroscopeUpdates()
磁力计
isMagnetometerAvailable()
将返回一个布尔值,指示当前设备是否支持磁力计。
Coremotion.isMagnetometerAvailable()
isMagnetometerActive()
将返回一个布尔值,指示 Core Motion 是否目前正在返回磁力计数据。
Coremotion.isMagnetometerActive()
setMagnetometerUpdateInterval()
接受一个数字,允许更改以秒为单位的更新间隔。
Coremotion.setMagnetometerUpdateInterval(.2);
startMagnetometerUpdates()
接受一个回调,返回以下磁场
{x, y, z}
Coremotion.startMagnetometerUpdates(callback);
stopMagnetometerUpdates()
停止 Core Motion 发送磁力计更新。
Coremotion.stopMagnetometerUpdates()
设备运动
isDeviceMotionAvailable()
将返回一个布尔值,指示当前设备是否支持设备运动。
Coremotion.isDeviceMotionAvailable()
isDeviceMotionActive()
将返回一个布尔值,指示 Core Motion 是否目前正在返回设备运动数据。
Coremotion.isDeviceMotionActive()
setDeviceMotionUpdateInterval()
接受一个数字,允许更改以秒为单位的更新间隔。
Coremotion.setDeviceMotionUpdateInterval(.2);
startDeviceMotionUpdates()
接受一个回调,返回以下
attitude: {pitch, roll, yaw},
gravity: {x, y, z},
userAcceleration: {x, y, z},
magneticField: { accuracy, field: {x, y, z} },
rotationRate: {x, y, z}
Coremotion.startDeviceMotionUpdates(callback);
stopDeviceMotionUpdates()
停止 Core Motion 发送设备运动更新。
Coremotion.stopDeviceMotionUpdates()
高度计
isRelativeAltitudeAvailable()
将返回一个布尔值,指示当前设备是否支持相对高度。
Coremotion.isRelativeAltitudeAvailable()
isRelativeAltitudeActive()
将返回一个布尔值,指示 Core Motion 是否目前正在返回相对高度数据。
Coremotion.isRelativeAltitudeActive()
startRelativeAltitudeUpdates()
接受一个回调,返回以下
{pressure, relativeAltitude}
Coremotion.startRelativeAltitudeUpdates(callback);
stopDeviceMotionUpdates()
停止 Core Motion 发送相对高度更新。
Coremotion.stopRelativeAltitudeUpdates()
注意事项
插件仅适用于 iOS,因为 Android 上不存在 Core Motion。
插件需要 NativeScript 2.3.0 或更高版本,因为它是基于那个版本工作的。
插件已针对 iOS 10 和 Xcode 8 进行测试。
存在一个名为 nativescript-accelerometer 的现有插件,它仅公开了 Core Motion 的一小部分功能,如果命名空间允许,会向它提交 PR。
isXYZActive()
在此时不会重新查询 Core Motion,而只是返回插件中设置的布尔值。
保修
没有保修。您接受由此带来的任何和所有责任和义务。此外,如果您使用此插件并且有人因此起诉我,您同意支付我的法律费用。