:          

本文介绍如何获取android设备所支持的传感器列表。


目前,android 4.4 (API等级19)支持以下传感器:


?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 TYPE_ACCELEROMETER      加速度传感器,单位是m/s2,测量应用于设备X、Y、Z轴上的加速度      传感器类型值(Sensor Type): 1 ( 0x00000001 )       TYPE_AMBIENT_TEMPERATURE      温度传感器,单位是℃      传感器类型值(Sensor Type): 13 ( 0x0000000d )   TYPE_GAME_ROTATION_VECTOR      游戏动作传感器,不收电磁干扰影响      传感器类型值(Sensor Type): 15 ( 0x0000000f )   TYPE_GEOMAGNETIC_ROTATION_VECTOR      地磁旋转矢量传感器,提供手机的旋转矢量,当手机处于休眠状态时,仍可以记录设备的方位      传感器类型值(Sensor Type): 20 ( 0x00000014 )   TYPE_GRAVITY      重力传感器,单位是m/s2,测量应用于设备X、Y、Z轴上的重力      传感器类型值(Sensor Type): 9 ( 0x00000009 )   TYPE_GYROSCOPE      陀螺仪传感器,单位是rad/s,测量设备x、y、z三轴的角加速度      传感器类型值(Sensor Type): 4 ( 0x00000004 )   TYPE_GYROSCOPE_UNCALIBRATED      未校准陀螺仪传感器,提供原始的,未校准、补偿的陀螺仪数据,用于后期处理和融合定位数据      传感器类型值(Sensor Type): 16 ( 0x00000010 )   TYPE_LIGHT      光线感应传感器,单位lx,检测周围的光线强度      传感器类型值(Sensor Type): 5 ( 0x00000005 )   TYPE_LINEAR_ACCELERATION      线性加速度传感器,单位是m/s2,该传感器是获取加速度传感器去除重力的影响得到的数据      传感器类型值(Sensor Type): 10 ( 0x0000000a )   TYPE_MAGNETIC_FIELD      磁力传感器,单位是uT(微特斯拉),测量设备周围三个物理轴(x,y,z)的磁场      传感器类型值(Sensor Type): 2 ( 0x00000002 )   TYPE_MAGNETIC_FIELD_UNCALIBRATED      未校准磁力传感器,提供原始的,未校准的磁场数据      传感器类型值(Sensor Type): 14 ( 0x0000000e )   TYPE_ORIENTATION      方向传感器,测量设备围绕三个物理轴(x,y,z)的旋转角度      传感器类型值(Sensor Type): 3 ( 0x00000003 )   TYPE_PRESSURE      压力传感器,单位是hPa(百帕斯卡),返回当前环境下的压强      传感器类型值(Sensor Type): 6 ( 0x00000006 )   TYPE_PROXIMITY      距离传感器,单位是cm,用来测量某个对象到屏幕的距离      传感器类型值(Sensor Type): 8 ( 0x00000008 )   TYPE_RELATIVE_HUMIDITY      湿度传感器,单位是%,来测量周围环境的相对湿度      传感器类型值(Sensor Type): 12 ( 0x0000000c )   TYPE_ROTATION_VECTOR      旋转矢量传感器,旋转矢量代表设备的方向      传感器类型值(Sensor Type): 11 ( 0x0000000b )   TYPE_SIGNIFICANT_MOTION      特殊动作触发传感器      传感器类型值(Sensor Type): 17 ( 0x00000011 )   TYPE_STEP_COUNTER      计步传感器      传感器类型值(Sensor Type): 19 ( 0x00000013 )   TYPE_STEP_DETECTOR      步行检测传感器,用户每走一步就触发一次事件      传感器类型值(Sensor Type): 18 ( 0x00000012 )   TYPE_TEMPERATURE      温度传感器,目前已被TYPE_AMBIENT_TEMPERATURE替代      传感器类型值(Sensor Type): 7 ( 0x00000007 )

获取传感器列表的代码如下:



?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 package com.example.androidtest;   import java.util.List;   import android.os.Bundle; import android.annotation.SuppressLint; import android.app.Activity; import android.content.Context; import android.hardware.Sensor; import android.hardware.SensorManager; import android.view.Menu;   public class MainActivity extends Activity {        @Override      protected void onCreate(Bundle savedInstanceState) {          super .onCreate(savedInstanceState);          setContentView(R.layout.activity_main);            getSensorList();      }        @SuppressLint ( "NewApi" )      private void getSensorList() {          // 获取传感器管理器          SensorManager sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);            // 获取全部传感器列表          List sensors = sensorManager.getSensorList(Sensor.TYPE_ALL);            // 打印每个传感器信息          StringBuilder strLog = new StringBuilder();          int iIndex = 1 ;          for (Sensor item : sensors) {              strLog.append(iIndex + "." );              strLog.append( " Sensor Type - " + item.getType() + "\r\n" );              strLog.append( " Sensor Name - " + item.getName() + "\r\n" );              strLog.append( " Sensor Version - " + item.getVersion() + "\r\n" );              strLog.append( " Sensor Vendor - " + item.getVendor() + "\r\n" );              strLog.append( " Maximum Range - " + item.getMaximumRange() + "\r\n" );              strLog.append( " Minimum Delay - " + item.getMinDelay() + "\r\n" );              strLog.append( " Power - " + item.getPower() + "\r\n" );              strLog.append( " Resolution - " + item.getResolution() + "\r\n" );              strLog.append( "\r\n" );              iIndex++;          }          System.out.println(strLog.toString());      }        @Override      public boolean onCreateOptionsMenu(Menu menu) {          // Inflate the menu; this adds items to the action bar if it is present.          getMenuInflater().inflate(R.menu.activity_main, menu);          return true ;      }   }

以三星Note3为例,其支持的传感器如下:



?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 1 .  Sensor Type - 1      Sensor Name - MPU6500 Acceleration Sensor      Sensor Version - 1      Sensor Vendor - Invensense      Maximum Range - 19.6133      Minimum Delay - 5000      Power - 0.25      Resolution - 5 .985504E- 4   2 .  Sensor Type - 2      Sensor Name - YAS532 Magnetic Sensor      Sensor Version - 1      Sensor Vendor - Yamaha Corporation      Maximum Range - 1200.0      Minimum Delay - 10000      Power - 6.0      Resolution - 0.06   3 .  Sensor Type - 14      Sensor Name - YAS532 Uncalibrated Magnetic Sensor      Sensor Version - 1      Sensor Vendor - Yamaha Corporation      Maximum Range - 1200.0      Minimum Delay - 10000      Power - 6.0      Resolution - 0.06   4 .  Sensor Type - 4      Sensor Name - MPU6500 Gyroscope Sensor      Sensor Version - 1      Sensor Vendor - Invensense      Maximum Range - 8.726646      Minimum Delay - 5000      Power - 6.1      Resolution - 2 .663161E- 4   5 .  Sensor Type - 6      Sensor Name - Barometer Sensor      Sensor Version - 1      Sensor Vendor - BOSCH      Maximum Range - 1013.25      Minimum Delay - 66700      Power - 1.0      Resolution - 1.0   6 .  Sensor Type - 8      Sensor Name - MAX88921 Proximity Sensor      Sensor Version - 1      Sensor Vendor - MAXIM, Inc.      Maximum Range - 8.0      Minimum Delay - 0      Power - 0.75      Resolution - 8.0   7 .  Sensor Type - 5      Sensor Name - MAX88921 RGB Sensor      Sensor Version - 1      Sensor Vendor - MAXIM, Inc.      Maximum Range - 60000.0      Minimum Delay - 200000      Power - 0.75      Resolution - 1.0   8 .  Sensor Type - 12      Sensor Name - SHTC1 relative humidity sensor      Sensor Version - 1      Sensor Vendor - Sensirion      Maximum Range - 100.0      Minimum Delay - 1000000      Power - 0.3      Resolution - 0.04   9 .  Sensor Type - 13      Sensor Name - SHTC1 ambient temperature sensor      Sensor Version - 1      Sensor Vendor - Sensirion      Maximum Range - 165.0      Minimum Delay - 1000000      Power - 0.3      Resolution - 0.01   10 . Sensor Type - 15      Sensor Name - MPL Game Rotation Vector      Sensor Version - 1      Sensor Vendor - Invensense      Maximum Range - 1200.0      Minimum Delay - 10000      Power - 6.0      Resolution - 0.06   11 . Sensor Type - 18      Sensor Name - SAMSUNG Step Detector Sensor      Sensor Version - 1      Sensor Vendor - Samsung Inc.      Maximum Range - 1.0      Minimum Delay - 0      Power - 0.3      Resolution - 1.0   12 . Sensor Type - 19      Sensor Name - SAMSUNG Step Counter Sensor      Sensor Version - 1      Sensor Vendor - Samsung Inc.      Maximum Range - 100000.0      Minimum Delay - 0      Power - 0.3      Resolution - 1.0   13 . Sensor Type - 17      Sensor Name - SAMSUNG Significant Motion Sensor      Sensor Version - 1      Sensor Vendor - Samsung Inc.      Maximum Range - 1.0      Minimum Delay - 10000      Power - 0.3      Resolution - 1.0   14 . Sensor Type - 16      Sensor Name - MPU6500 Uncalibrated Gyroscope Sensor      Sensor Version - 1      Sensor Vendor - Invensense      Maximum Range - 8.726646      Minimum Delay - 5000      Power - 6.1      Resolution - 2 .663161E- 4   15 . Sensor Type - 65558      Sensor Name - Auto Rotation Sensor      Sensor Version - 1      Sensor Vendor - Samsung Electronics      Maximum Range - 255.0      Minimum Delay - 0      Power - 0.0      Resolution - 0.0   16 . Sensor Type - 11      Sensor Name - Rotation Vector Sensor      Sensor Version - 3      Sensor Vendor - AOSP      Maximum Range - 1.0      Minimum Delay - 5000      Power - 12.35      Resolution - 5 .9604645E- 8   17 . Sensor Type - 9      Sensor Name - Gravity Sensor      Sensor Version - 3      Sensor Vendor - AOSP      Maximum Range - 19.6133      Minimum Delay - 5000      Power - 12.35      Resolution - 5 .985504E- 4   18 . Sensor Type - 10      Sensor Name - Linear Acceleration Sensor      Sensor Version - 3      Sensor Vendor - AOSP      Maximum Range - 19.6133      Minimum Delay - 5000      Power - 12.35      Resolution - 5 .985504E- 4   19 . Sensor Type - 3      Sensor Name - Orientation Sensor      Sensor Version - 1      Sensor Vendor - AOSP      Maximum Range - 360.0      Minimum Delay - 5000      Power - 12.35      Resolution - 0.00390625

更多相关文章

  1. Android(安卓)MIME类型与文件后缀名匹配部分
  2. android Paint 设置线宽setStrokeWidth()的单位
  3. android打开文件及打开方式(打开程序列表)
  4. JS判断当前环境为微信,手机判断浏览器类型
  5. Android中intent如何传递自定义数据类型
  6. Android(安卓)加速度传感器(G-Sensor)
  7. Android(安卓)MIME类型结构
  8. Android中检测手机制式和移动网络类型
  9. Android(安卓)build.gradle buildConfigField 配置数组

随机推荐

  1. android实战
  2. Android动画循环弹动cycleInterpolator
  3. android批量插入数据效率对比
  4. Android - adb : logcat / shell / app_p
  5. Android中Activity共享变量的另一方法:App
  6. Android实现底部弹出按钮菜单升级版
  7. fastboot 详解
  8. Android系统开发小问题-启动过程中android
  9. android之有返回结果跳转intent
  10. 利用drozer进行Android渗透测试 - AndroS