:          

本文介绍如何获取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. JS判断当前环境为微信,手机判断浏览器类型
  4. Android中intent如何传递自定义数据类型
  5. Android 加速度传感器(G-Sensor)
  6. Android 电子罗盘--指南针(方向传感器的应用)
  7. Android 自定义属性 attr format取值类型

随机推荐

  1. android:configChanges属性总结
  2. Android(安卓)Drawable Importer的使用
  3. android开发环境
  4. Android(安卓)Studio failed to open by
  5. android内核编译方法
  6. 如何在android 中编译alsa-utils工具
  7. Ubuntu下搭建Android(安卓)NDK开发环境
  8. Android(安卓): 隐藏软键盘
  9. Android之Handler用法总结
  10. android下不规则多边形填充位图