UNPKG

cordova-plugin-device-motion

Version:
140 lines (80 loc) 5.72 kB
<!--- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> # cordova-plugin-device-motion Este plugin proporciona acceso a acelerómetro del dispositivo. El acelerómetro es un sensor de movimiento que detecta el cambio (*delta*) en movimiento con respecto a la orientación actual del dispositivo, en tres dimensiones sobre el eje *x*, *y*y *z* . El acceso es por un global `navigator.accelerometer` objeto. Aunque el objeto está unido al ámbito global `navigator` , no estará disponible hasta después de la `deviceready` evento. document.addEventListener ("deviceready", onDeviceReady, false); function onDeviceReady() {console.log(navigator.accelerometer)}; ## Instalación Cordova plugin añade cordova-plugin-device-movimiento ## Plataformas soportadas * Amazon fire OS * Android * BlackBerry 10 * Explorador * Firefox OS * iOS * Tizen * Windows Phone 8 * Windows ## Métodos * navigator.accelerometer.getCurrentAcceleration * navigator.accelerometer.watchAcceleration * navigator.accelerometer.clearWatch ## Objetos * Acceleration ## navigator.accelerometer.getCurrentAcceleration Tienes la aceleración actual a lo largo de los ejes *x*, *y*y *z* . Estos valores de aceleración son devueltos a la `accelerometerSuccess` función de callback. navigator.accelerometer.getCurrentAcceleration (accelerometerSuccess, accelerometerError); ### Ejemplo function onSuccess(acceleration) {alert ('Aceleración X:' + acceleration.x + '\n' + 'Aceleración Y:' + acceleration.y + '\n' + 'Aceleración Z:' + acceleration.z + '\n' + ' Timestamp: ' + acceleration.timestamp + '\n');}; función onError() {alert('onError!');}; navigator.accelerometer.getCurrentAcceleration (onSuccess, onError); ### Navegador rarezas Los valores para X, Y, movimiento Z son todo generada aleatoriamente en orden para simular el acelerómetro. ### iOS rarezas * iOS no reconoce el concepto de conseguir la aceleración actual en cualquier momento dado. * Debes ver la aceleración y capturar los datos en determinados intervalos de tiempo. * Así, la función de `getCurrentAcceleration` rinde el último valor informado de una llamada de `watchAccelerometer`. ## navigator.accelerometer.watchAcceleration Recupera el dispositivo actual de `Acceleration` a intervalos regulares, ejecutar el `accelerometerSuccess` función callback cada vez. Especificar el intervalo en milisegundos mediante la `acceleratorOptions` del objeto `frequency` parámetro. El vuelto ver referencias ID intervalo del acelerómetro reloj y puede ser utilizado con `navigator.accelerometer.clearWatch` para dejar de ver el acelerómetro. var watchID = navigator.accelerometer.watchAcceleration (accelerometerSuccess, accelerometerError, accelerometerOptions); * **accelerometerOptions**: Un objeto con las llaves opcionales siguientes: * **periodo**: periodo solicitado de llamadas a accelerometerSuccess con los datos de aceleración en milisegundos. *(Número)* (Por defecto: 10000) ### Ejemplo function onSuccess(acceleration) {alert ('Aceleración X:' + acceleration.x + '\n' + 'Aceleración Y:' + acceleration.y + '\n' + 'Aceleración Z:' + acceleration.z + '\n' + ' Timestamp: ' + acceleration.timestamp + '\n');}; función onError() {alert('onError!');}; var opciones = { frequency: 3000 }; Actualizar cada 3 segundos var watchID = navigator.accelerometer.watchAcceleration (onSuccess, onError, opciones); ### iOS rarezas La API llama a la función de devolución de llamada de éxito en el intervalo solicitado, pero restringe la gama de solicitudes que el dispositivo entre 40ms y 1000ms. Por ejemplo, si usted solicita un intervalo de 3 segundos, (3000ms), la API solicita datos desde el dispositivo cada 1 segundo, pero sólo ejecuta el callback de éxito cada 3 segundos. ## navigator.accelerometer.clearWatch Dejar de mirar el `Acceleration` referenciado por el `watchID` parámetro. navigator.accelerometer.clearWatch(watchID); * **watchID**: el identificador devuelto por`navigator.accelerometer.watchAcceleration`. ### Ejemplo var watchID = navigator.accelerometer.watchAcceleration (onSuccess, onError, opciones); ... adelante... navigator.accelerometer.clearWatch(watchID); ## Acceleration Contiene `Accelerometer` datos capturados en un punto específico en el tiempo. Valores de aceleración incluyen el efecto de la gravedad (9,81 m/s ^ 2), de modo que cuando se encuentra un dispositivo plano y hacia arriba, *x*, *y*, y *z* valores devueltos deben ser `` , `` , y`9.81`. ### Propiedades * **x**: Cantidad de aceleración en el eje X. (en m/s^2) *(Number)* * **y**: Cantidad de aceleración en el eje Y. (en m/s^2) *(Number)* * **z**: Cantidad de aceleración en el eje Z. (en m/s^2) *(Number)* * **timestamp**: Momento de la captura en milisegundos.*(DOMTimeStamp)*