cordova-plugin-device-motion
Dieses Plugin ermöglicht den Zugriff auf das Gerät Beschleunigungsmesser. Der Beschleunigungsmesser ist ein Bewegungssensor, der die Änderung (Delta) erkennt Bewegung im Verhältnis zu der aktuellen Geräte-Orientierung, in drei Dimensionen entlang der x-, *y-*und Z -Achse.
Der Zugang ist über eine globale navigator.accelerometer
-Objekt.
Obwohl das Objekt mit der globalen Gültigkeitsbereich navigator
verbunden ist, steht es nicht bis nach dem Deviceready
-Ereignis.
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
console.log(navigator.accelerometer);
}
Installation
cordova plugin add cordova-plugin-device-motion
Unterstützte Plattformen
- Amazon Fire OS
- Android
- BlackBerry 10
- Browser
- Firefox OS
- iOS
- Tizen
- Windows Phone 8
- Windows
Methoden
- navigator.accelerometer.getCurrentAcceleration
- navigator.accelerometer.watchAcceleration
- navigator.accelerometer.clearWatch
Objekte
- Beschleunigung
navigator.accelerometer.getCurrentAcceleration
Erhalten Sie die aktuelle Beschleunigung entlang der x-, y- und z-Achsen.
Diese Beschleunigungswerte werden an die accelerometerSuccess
-Callback-Funktion zurückgegeben.
navigator.accelerometer.getCurrentAcceleration(accelerometerSuccess, accelerometerError);
Beispiel
function onSuccess(acceleration) {
alert('Acceleration X: ' + acceleration.x + '\n' +
'Acceleration Y: ' + acceleration.y + '\n' +
'Acceleration Z: ' + acceleration.z + '\n' +
'Timestamp: ' + acceleration.timestamp + '\n');
};
function onError() {
alert('onError!');
};
navigator.accelerometer.getCurrentAcceleration(onSuccess, onError);
Browser-Eigenheiten
Werte für X, Y, Z-Bewegung sind alle zufällig generierten in Ordnung, den Beschleunigungsmesser zu simulieren.
iOS Macken
-
iOS erkennt nicht das Konzept die aktuelle Beschleunigung zu einem bestimmten Zeitpunkt zu bekommen.
-
Müssen Sie die Beschleunigung zu sehen und erfassen die Daten zu bestimmten Zeitintervallen.
-
So die
getCurrentAcceleration
-Funktion führt zu den letzten Wert berichtet von einerwatchAccelerometer
rufen.
navigator.accelerometer.watchAcceleration
Ruft das Gerät aktuelle Accelerometer
in regelmäßigen Abständen, die accelerometerSuccess
-Callback-Funktion jedes Mal ausgeführt. Gibt das Intervall in Millisekunden über das AcceleratorOptions
-Objekt-frequency
-Parameter.
Die zurückgegebenen Watch-ID verweist der Beschleunigungsmesser Uhr Intervall und kann mit navigator.accelerometer.clearWatch
um zu stoppen, beobachten den Beschleunigungsmesser verwendet werden.
var watchID = navigator.accelerometer.watchAcceleration(accelerometerSuccess,
accelerometerError,
accelerometerOptions);
- accelerometerOptions: Ein Objekt mit den folgenden optionalen Elementen:
- Zeitraum: gewünschten Zeitraum der Aufrufe von AccelerometerSuccess mit Beschleunigungsdaten in Millisekunden. (Anzahl) (Default: 10000)
Beispiel
function onSuccess(acceleration) {
alert('Acceleration X: ' + acceleration.x + '\n' +
'Acceleration Y: ' + acceleration.y + '\n' +
'Acceleration Z: ' + acceleration.z + '\n' +
'Timestamp: ' + acceleration.timestamp + '\n');
};
function onError() {
alert('onError!');
};
var options = { frequency: 3000 }; // Update every 3 seconds
var watchID = navigator.accelerometer.watchAcceleration(onSuccess, onError, options);
iOS Macken
Die API ruft die Erfolg-Callback-Funktion im Intervall angefordert, aber schränkt den Bereich der Anforderungen an das Gerät zwischen 40ms und 1000ms. Beispielsweise wenn Sie ein Intervall von 3 Sekunden, (3000ms), beantragen die API fordert Daten vom Gerät jede 1 Sekunde, aber nur den Erfolg-Rückruf führt alle 3 Sekunden.
navigator.accelerometer.clearWatch
Hör auf, beobachten die Beschleunigung
durch den watchID
-Parameter verwiesen.
navigator.accelerometer.clearWatch(watchID);
- WatchID: die ID von zurückgegeben
navigator.accelerometer.watchAcceleration
.
Beispiel
var watchID = navigator.accelerometer.watchAcceleration(onSuccess, onError, options);
// ... later on ...
navigator.accelerometer.clearWatch(watchID);
Beschleunigung
Zu einem bestimmten Zeitpunkt im Zeit erfasste Accelerometer
-Daten enthält. Beschleunigungswerte sind die Auswirkungen der Schwerkraft (9.81 m/s ^ 2), so dass wenn ein Gerät flach und nach oben, X, y liegt, und Z-Werte zurückgegeben werden, ,
und 9.81 sollte
.
Eigenschaften
- X: Betrag der Beschleunigung auf der x-Achse. (in m/s ^ 2) (Anzahl)
- y: Betrag der Beschleunigung auf der y-Achse. (in m/s ^ 2) (Anzahl)
- Z: Betrag der Beschleunigung auf die z-Achse. (in m/s ^ 2) (Anzahl)
- Timestamp: Zeitstempel der Erstellung in Millisekunden. (DOMTimeStamp)