Sensor.TYPE_ORIENTATION:

All values are angles in degrees.

values[0]: Azimuth, angle between the magnetic north direction and the y-axis, around the z-axis (0 to 359). 0=North, 90=East, 180=South, 270=West

values[1]: Pitch, rotation around x-axis (-180 to 180), with positive values when the z-axis moves toward the y-axis.

values[2]: Roll, rotation around y-axis (-90 to 90), with positive values when the x-axis moves toward the z-axis.

Note: This definition is different from yaw, pitch and roll used in aviation where the X axis is along the long side of the plane (tail to nose).

Note: This sensor type exists for legacy reasons, please use getRotationMatrix() in conjunction with remapCoordinateSystem() and getOrientation() to compute these values instead.

Important note: For historical reasons the roll angle is positive in the clockwise direction (mathematically speaking, it should be positive in the counter-clockwise direction).

由图可以知道values[0]是绕Yaw轴旋转得到的值,values[1]是绕Pitch轴旋转得到的值,values[2]是绕Roll轴旋转得到的值。

例程如下:

OrientationSensorDemoActivity.java代码:

package com.lau.orientation;import android.app.Activity;import android.content.Context;import android.hardware.Sensor;import android.hardware.SensorEvent;import android.hardware.SensorEventListener;import android.hardware.SensorManager;import android.os.Bundle;import android.widget.TextView;public class OrientationSensorDemoActivity extends Activity implements SensorEventListener {private SensorManager sensorManager = null;private boolean mRegister = false;private Sensor sensor = null;private TextView tvAzimuth = null;private TextView tvPitch = null;private TextView tvRoll = null;    /** Called when the activity is first created. */    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);                tvAzimuth = (TextView) findViewById(R.id.azimuth);        tvPitch = (TextView) findViewById(R.id.pitch);        tvRoll = (TextView) findViewById(R.id.roll);                sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);        sensor = sensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION);                    }@Overrideprotected void onPause() {// TODO Auto-generated method stubsuper.onPause();if(mRegister) {sensorManager.unregisterListener(this);}}@Overrideprotected void onResume() {// TODO Auto-generated method stubsuper.onResume();mRegister = sensorManager.registerListener(this, sensor, SensorManager.SENSOR_DELAY_NORMAL);}@Overridepublic void onAccuracyChanged(Sensor sensor, int accuracy) {// TODO Auto-generated method stub}@Overridepublic void onSensorChanged(SensorEvent event) {// TODO Auto-generated method stubtvAzimuth.setText("Azimuth 方位角: " + event.values[0] + "\n(0 - 359) 0=North, 90=East, 180=South, 270=West");tvPitch.setText("Pitch 倾斜角: " + event.values[1] + "\n(-180 to 180)");tvRoll.setText("Roll 旋转角: " + event.values[2] + "\n(-90 to 90)");}    }


 

 

布局文件main.xml:

<?xml version="1.0" encoding="utf-8"?>                


 




一、实例教程:Android设备功能之传感器教程篇:

1、Android 的传感器
http://www.eoeandroid.com/thread-101949-1-1.html 

2、Android 光传感器
http://www.eoeandroid.com/thread-75288-1-1.html

3、Android 磁场传感器
http://www.eoeandroid.com/thread-75282-1-1.html

4、Android 姿态传感器
http://www.eoeandroid.com/thread-75277-1-1.html

5、Android 温度传感器
http://www.eoeandroid.com/thread-75285-1-1.html

6、关于传感器的使用
http://www.eoeandroid.com/thread-62297-1-1.html

7、深入探讨 Android 传感器
http://www.eoeandroid.com/thread-21672-1-1.html

8、2010年08月28日Android底层、框架与上层应用培训- 资料共享(大荐)
http://www.eoeandroid.com/thread-33418-1-1.html

9、Android 小球重力感应实现(一)
http://www.eoeandroid.com/thread-98306-1-1.html

10、Android 梳理一下 传感器 的 数据流 和 框架
http://www.eoeandroid.com/thread-101496-1-1.html

11、Android 传感器的 数据流和框架 是怎么样让 屏幕旋转
http://www.eoeandroid.com/thread-101192-1-1.html

12、Android 游戏中的传感器
http://www.eoeandroid.com/thread-79700-1-1.html

13、【Android2D游戏开发十八】解放 手指,利用传感器开发游戏!
http://www.eoeandroid.com/thread-55574-1-1.html


二、学习笔记:Android设备功能之传感器的实践过程篇: 

1、资源三、android开发资料系统学习,大量游戏3d传感器源码
http://www.eoeandroid.com/thread-153019-1-1.html

2、Android传感器API之:加速度Accelerometer功能源码
http://www.eoeandroid.com/thread-146211-1-1.html

3、Android传感器API之:温度传感器SensorTemperature功能源码
http://www.eoeandroid.com/thread-147885-1-1.html

4、Android传感器API之:方向SensorOrientation传感器功能实现与源码分享
http://www.eoeandroid.com/thread-128607-1-1.html

5、Android传感器API之:磁场Magnetic Field源码与示例
http://www.eoeandroid.com/thread-120996-1-1.html

6、Android传感器API之:近距离感应Proximity功能源码
http://www.eoeandroid.com/thread-147719-1-1.html

7、opengl es 加传感器
http://www.eoeandroid.com/thread-66535-1-1.html

8、 Android 传感器和录制媒体样例的实例
http://www.eoeandroid.com/thread-24847-1-1.html

9、利用SensorSimulator进行传感器的模拟
http://www.eoeandroid.com/thread-114920-1-1.html

10、Android 开发中传感器使用实例
http://www.eoeandroid.com/thread-70257-1-1.html

11、转载:Sensor传感器源码的阅读与应用开发简单实例
http://www.eoeandroid.com/thread-55708-1-1.html


三、EOE社区关于Android设备功能之传感器的实践问题篇(已解答):

1、关于传感器的疑问,求大大们解释一下
http://www.eoeandroid.com/thread-166935-1-1.html

2、Android传感器的简单例子无法工作
http://www.eoeandroid.com/thread-101622-1-1.html

3、2.3版本的加速度传感器
http://www.eoeandroid.com/thread-60604-1-1.html

4、传感器,请大家帮我看一下
http://www.eoeandroid.com/thread-96235-1-1.html

5、如何利用传感器等资源判断我现在是在卫生间还是卧室?(火)
http://www.eoeandroid.com/thread-73270-1-1.html

6、GPS等传感器
http://www.eoeandroid.com/thread-118306-1-1.html


四、EOE社区关于Android设备功能之传感器的实践问题篇(未解答):

1、屏幕熄灭后 传感器不工作的问题
http://www.eoeandroid.com/thread-162993-1-1.html

2、关于传感器
http://www.eoeandroid.com/thread-165763-1-1.html

3、求问一些关于传感器的问题。
http://www.eoeandroid.com/thread-163679-1-1.html

4、传感器编程求解啊
http://www.eoeandroid.com/thread-159213-1-1.html

5、提问+探讨:关于近距离传感器的那点破事
http://www.eoeandroid.com/thread-60798-1-1.html

6、传感器记录运动轨迹
http://www.eoeandroid.com/thread-165059-1-1.html

7、传感器数据
http://www.eoeandroid.com/thread-84189-1-1.html

8、如何通过传感器在一张图片上画出你的移动轨迹
http://www.eoeandroid.com/thread-158881-1-1.html

9、Eclipse无法创建传感器端口
http://www.eoeandroid.com/thread-151546-1-1.html

10、为什么手机不动传感器值也一直在变
http://www.eoeandroid.com/thread-158187-1-1.html

11、传感器获取间隔不稳定
http://www.eoeandroid.com/thread-103108-1-1.html

12、利用传感器求位移(荐)
http://www.eoeandroid.com/thread-12163-1-1.html

13、android 传感器加速表的值不停在变
http://www.eoeandroid.com/thread-10272-1-1.html

14、关于传感器的问题
http://www.eoeandroid.com/thread-10948-1-1.html

更多相关文章

  1. android scrollview嵌套listview出现高度显示不全解决方案
  2. Android传感器(六):光传感器
  3. windows系统 android源码下载
  4. Android运行原理及运行机制知识汇总
  5. Android自动跳转activity
  6. Android(安卓)SDK无法更新终极解决方式
  7. Android(安卓)全屏无标题详解
  8. Android利用Ksoap2连接webservice 源码
  9. 传感器总结

随机推荐

  1. Android中Adapter和Bridge模式理解和应用
  2. android中如果需要将字符在两行TextView
  3. Android(安卓)IntentService的使用和源码
  4. Android中实现应用切换主题机制
  5. Android客制化------开机拷贝文件到内置
  6. Android(安卓)SQLite 开发教程(2): andro
  7. Android(安卓)学习笔记(3)—— ImageView/R
  8. 免费短信和电话服务TextFree在Android上
  9. Android模拟键盘之菜单键消失
  10. Android学习系列(14)--App调试的几个命令