android SensorEventListener problème
Je suis en train de créer une application qui lit les données à partir d'une boussole numérique. J'ai essayé de réutiliser le code du livre Professionnel de Développement d'Applications Android, mais l'IDE affiche une note
Le type SensorListener est obsolète
Je suppose que c'est parce que le code de la livre est écrit pour la précédente version du SDK j'ai donc essayé d'utiliser SensorEventListener à la place.
Puis quand j'ai essayé d'enregistrer l'écouteur
sensorManager.registerListener(sensorListener, SensorManager.SENSOR_ORIENTATION, SensorManager.SENSOR_DELAY_FASTEST);
une erreur s'est glissée:
La méthode registerListener(SensorListener, int, int) dans le type SensorManager n'est pas applicable pour les arguments (SensorEventListener, int, int)
j'ai donc essayé de le jeter SensorEventListener à SensorListener, mais l'application ne fonctionne pas.
Personne ne sait comment utiliser le capteur dans les plus récentes versions du SDK?
Merci.
Vous devez vous connecter pour publier un commentaire.
Il existe une autre
SensorEventListener
classe, vous devez utiliser. Voir ici.Vous avez réellement besoin de passer dans un Détecteur d'objet, pas juste l'ID de il.
Sensor sensor = sensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION);
sensorManager.registerListener(sensorListener, sensor, SensorManager.SENSOR_DELAY_FASTEST)
La méthode est obsolète, vous devez utiliser
à la place.
J'ai eu le même problème mais quand j'ai joué les 2 premiers paramètres (SensorEventListener) et (Capteur), il a travaillé. J'ai alors réalisé que le problème était que, pour une raison que j'avait déclaré le Capteur de type "Objet" et non pas "Capteur", de sorte que l'Éclipse a échoué à identifier les types de paramètres.
Cela a fonctionné pour moi:
Mais maintenant, j'ai bien déclaré mAccelerometer type de Capteur je n'ai plus besoin de l'jette.