2017-08-23 6 views
1

J'essaie de trouver le changement dans le mouvement d'un appareil sous Android. Pour cela, j'utilise SensorManager API. Je pouvais seulement avoir un tremblement mais pas quand l'appareil est légèrement déplacé. Est-il possible de savoir quand l'appareil est légèrement déplacé?Comment détecter le mouvement d'un appareil?

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]; 
} 

Merci

+0

J'ai récemment téléchargé [Test] Capteurs (https://play.google.com/store/apps/details?id=asd.vector.sensor) - ce ou des applications similaires vous montrer les différents capteurs , alors regardez-les tous pour en trouver un qui semble prometteur pour détecter le mouvement. 'TYPE_LINEAR_ACCELERATION' pourrait être le meilleur pour vos besoins, mais traduire des lectures brutes en mouvements spécifiques est une autre affaire. –

+0

Merci @ KenY-N, je vais essayer cela. – ravi

Répondre

0

Il y a une option appelée Motion Sensor dans Android qui vous aidera à capturer le mouvement de l'appareil.

Il existe une documentation complète disponible dans le lien ci-dessous qui peut vous aider à répondre à vos besoins.

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

+0

Merci @Avid pour votre réponse. J'utilise uniquement SensorManger, que vous avez mentionné. – ravi