cordova-plugin-device-motion
Ce plugin permet d'accéder à l'accéléromètre de l'appareil. L'accéléromètre est un capteur de mouvement qui détecte la modification (delta) en mouvement par rapport à l'orientation actuelle de l'appareil, en trois dimensions le long de l'axe x, yet z .
Accès se fait par un global navigator.accelerometer
objet.
Bien que l'objet est attaché à la portée globale navigator
, il n'est pas disponible jusqu'après la deviceready
événement.
document.addEventListener (« deviceready », onDeviceReady, false) ;
function onDeviceReady() {console.log(navigator.accelerometer);}
Installation
cordova plugin add cordova-plugin-device-motion
Plates-formes supportées
- Amazon Fire OS
- Android
- BlackBerry 10
- Navigateur
- Firefox OS
- iOS
- Paciarelli
- Windows Phone 8
- Windows
Méthodes
- navigator.accelerometer.getCurrentAcceleration
- navigator.accelerometer.watchAcceleration
- navigator.accelerometer.clearWatch
Objets
- Acceleration
navigator.accelerometer.getCurrentAcceleration
Obtenir l'accélération courante le long des axes x, yet z .
Ces valeurs d'accélération sont retournés à la accelerometerSuccess
fonction de rappel.
navigator.accelerometer.getCurrentAcceleration (accelerometerSuccess, accelerometerError) ;
Exemple
function onSuccess(acceleration) {alert ("Accélération X:" + acceleration.x + « \n » + "Accélération Y:" + acceleration.y + « \n » + « Accélération Z: » + acceleration.z + « \n » + ' Timestamp: "+ acceleration.timestamp + « \n »);} ;
fonction onError() {alert('onError!');} ;
navigator.accelerometer.getCurrentAcceleration (onSuccess, onError) ;
Bizarreries navigateur
Les valeurs x, Y, motion de Z sont tous ordre généré de manière aléatoire dans pour simuler l'accéléromètre.
Notes au sujet d'iOS
-
iOS ne permet pas d'obtenir l'accélération en cours à un instant donné.
-
Vous devez observer l'accélération et capturer ses données à un intervalle de temps donné.
-
De ce fait, la fonction
getCurrentAcceleration
renvoie la dernière valeur retournée par un appel àwatchAccelerometer
.
navigator.accelerometer.watchAcceleration
Récupère le dispositif actuel de Acceleration
à intervalle régulier, l'exécution de la accelerometerSuccess
fonction de rappel chaque fois. Spécifiez l'intervalle, en millisecondes, via le acceleratorOptions
de l'objet frequency
paramètre.
Le retourné regarder ID références intervalle de surveillance de l'accéléromètre et peut être utilisé avec navigator.accelerometer.clearWatch
d'arrêter de regarder l'accéléromètre.
var watchID = navigator.accelerometer.watchAcceleration (accelerometerSuccess, accelerometerError, accelerometerOptions) ;
- accelerometerOptions: Un objet avec les clés facultatives suivantes :
- période: période demandée d'appels à accelerometerSuccess avec les données d'accélération en millisecondes. (Nombre) (Par défaut : 10000)
Exemple
function onSuccess(acceleration) {alert ("Accélération X:" + acceleration.x + « \n » + "Accélération Y:" + acceleration.y + « \n » + « Accélération Z: » + acceleration.z + « \n » + ' Timestamp: "+ acceleration.timestamp + « \n »);} ;
fonction onError() {alert('onError!');} ;
options de var = { frequency: 3000 } ; Mise à jour chaque 3 secondes var watchID = navigator.accelerometer.watchAcceleration (onSuccess, onError, options) ;
Notes au sujet d'iOS
L'API appelle la fonction de rappel de succès à l'intervalle demandé, mais restreint l'éventail des demandes à l'appareil entre 40ms et 1000ms. Par exemple, si vous demandez un intervalle de 3 secondes, (3000ms), l'API demande des données de l'appareil toutes les 1 seconde, mais seulement exécute le rappel réussi toutes les 3 secondes.
navigator.accelerometer.clearWatch
Arrêter de regarder le Acceleration
référencé par le watchID
paramètre.
navigator.accelerometer.clearWatch(watchID) ;
- watchID: l'ID retourné par
navigator.accelerometer.watchAcceleration
.
Exemple
var watchID = navigator.accelerometer.watchAcceleration (onSuccess, onError, options) ;
... plus tard... navigator.accelerometer.clearWatch(watchID) ;
Acceleration
Contient Accelerometer
données capturées à un point précis dans le temps. Valeurs d'accélération comprennent l'effet de la pesanteur (9,81 m/s ^ 2), de sorte que lorsqu'un périphérique se trouve plat et face vers le haut, x, y, et z valeurs retournées doivent être ,
, et9.81
.
Propriétés
- x: Valeur de l'accélération sur l'axe des x. (en m/s^2) (Number)
- y: Valeur de l'accélération sur l'axe des y. (en m/s^2) (Number)
- y: Valeur de l'accélération sur l'axe des z. (en m/s^2) (Number)
- timestamp: Date de création en millisecondes. (DOMTimeStamp)