Je recherche un exemple de compas pour Android. Tout ce que je dois faire est d'obtenir le bon roulement (en mode portrait et paysage). P>
J'ai déjà trouvé plusieurs échantillons, certains utilisent uniquement Quel est le moyen correct et courant d'obtenir le roulement pour dire Android 1.6 - 4.0? P> sensor.type_orientation code>, certains utilisent une combinaison de
sensor.type_acélééromètre code> &
sensor.type_magnetic_field code>. p>
3 Réponses :
La documentation indique que vous devez utiliser Vous devriez donc lire à partir de De là si vous voyez ce diagramme, il est trivial pour obtenir l'orientation du téléphone. C'est probablement ce que votre deuxième exemple fait, mais je ne sais pas parce que vous ne m'avez pas montré ce que c'est. P> sensor.type_orientation code> est obsolète. p>
sensormanager.getorientation () code> à la place. p>
sensor.type_accélééromètre code> ainsi que de
sensor.type_magnetic_field code>, puis appelez
sensormanager.getrotationmatrix () code> et enfin
sensormanager.getOrientation () code> qui vous retournera l'orientation du téléphone. p>
Désolé, j'ai oublié d'attacher l'exemple: codingforandroid.com/2011/ 01 / ... Donc, celui-ci est la bonne voie?
Évidemment, comment vous utilisez les données est à vous, Onsensorchanged code> est l'endroit où se trouve le calcul intéressant.
Une autre question: comment puis-je obtenir la bonne roulement en degrés de l'orientation "Azimut = [0];" ligne?
@ nr1 math.Todegrees (orientation [0])
Utilisation d'une combinaison de sensor.type_acceleromètre code> et
sensor.type_magnetic_field code> et
sensormanager.getOrientation () code> méthode ne me donne pas des valeurs précises. La méthode dépréciée
sensor.type_orientation code> fonctionne bien. :) p>
Corrigez votre code puis. L'échantillon de code semble fonctionner correctement ( codingforandroid.com/2011 / 01 / ... jumelé avec le commentaire de Gezdy)
Ou peut-être avez-vous besoin de recalibrer votre appareil
Mais il n'y a qu'une forte> petite correction forte>: modification événement.values code> à
event.values.clone () code> selon ce
Cela fonctionne pour moi maintenant après cela Modification. P>