2017-08-23 10 views
1

Ich versuche, die Änderung der Bewegung eines Geräts in Android zu finden. Dazu benutze ich SensorManager API. Ich konnte das Ereignis nur schütteln, aber nicht, wenn das Gerät leicht bewegt wird. Gibt es eine Möglichkeit zu wissen, wann das Gerät leicht bewegt wird?Wie erkennt man die Bewegung eines Gerätes?

SensorManager sensorManager = (SensorManager) getSystemService(SENSOR_SERVICE); 
sensorManager.registerListener(this, 
       sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER), 
       SensorManager.SENSOR_DELAY_NORMAL); 

@Override 
public void onSensorChanged(SensorEvent event) { 
    // Here using x,y and z axis I want to know if the device is movement 
    float x = event.values[0]; 
    float y = event.values[1]; 
    float z = event.values[2]; 
} 

Dank

+0

ich vor kurzem heruntergeladen [Sensoren Test] (https://play.google.com/store/apps/details?id=asd.vector.sensor) - diese oder ähnliche Anwendungen zeigen Ihnen die verschiedenen Sensoren Sehen Sie sich alle an, um eine zu finden, die vielversprechend für die Bewegungserkennung ist. 'TYPE_LINEAR_ACCELERATION' ist vielleicht das Beste für Ihre Anforderungen, aber das Übersetzen von Rohdaten in spezifische Bewegungen ist eine andere Sache. –

+0

Danke @ KenY-N, ich werde das versuchen. – ravi

Antwort

0

Es gibt eine Option Motion Sensor im Android genannt, die Ihnen bei der Erfassung der Bewegung der Vorrichtung helfen.

Es gibt eine vollständige Dokumentation in dem unten angegebenen Link, die Ihnen beim Erreichen Ihrer Anforderung helfen kann.

https://developer.android.com/guide/topics/sensors/sensors_motion.html

+0

Danke @Avid für Ihre Antwort. Ich verwende nur den SensorManger, den Sie erwähnt haben. – ravi

Verwandte Themen