Comment puis-je obtenir l'orientation ACTUELLE (ActivityInfo.SCREEN_ORIENTATION_*) d'un appareil Android?

Je voudrais savoir détaillées de l'orientation de l'appareil, de préférence de SCREEN_ORIENTATION_LANDSCAPE, SCREEN_ORIENTATION_PORTRAIT, SCREEN_ORIENTATION_REVERSE_LANDSCAPE, SCREEN_ORIENTATION_REVERSE_PORTRAIT de ActivityInfo ou l'équivalent.

Quelques réponses ici sur StackOverflow inclus

getWindowManager().getDefaultDisplay().getRotation()

mais ce n'est pas vraiment vous me dire si l'appareil est en mode portrait ou paysage, seulement de la façon dont c'est tourné en référence à sa position naturelle - qui à son tour peut être en mode paysage ou portrait en premier lieu.

getResources().getConfiguration().orientation

retourne l'une des trois suivantes: ORIENTATION_LANDSCAPE, ORIENTATION_PORTRAIT, ORIENTATION_SQUARE, qui ensuite n'a pas vraiment me dire de quelle façon le téléphone est activé (si elle est à l'envers vers le bas ou les côtés il est tourné vers).

Je sais que je pourrais utiliser celui-ci en combinaison avec DisplayMetrics pour trouver le dispositif de l'orientation naturelle, mais il n'y a vraiment pas de meilleure façon?

InformationsquelleAutor Zoltán | 2012-04-30