Android学习笔记--获取传感器信息
相关资料:
传感器的坐标与读数:http://www.cnblogs.com/mengdd/archive/2013/05/19/3086781.html
传感器介绍及指南针原理:http://www.2cto.com/kf/201111/110233.html
获取安卓设备的方向:http://www.cnblogs.com/bpasser/archive/2011/10/17/2214517.html
方位传感器:http://blog.sina.com.cn/s/blog_48d4913001010zsu.html#sensors-pos-orient
原文链接:http://www.open-open.com/lib/view/open1423812538326.html
android 4.4 (API等级19)支持以下传感器: (注意并不是所有的手机都支持全部的传感器)
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)
获取手机传感器信息列表
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<Sensor> 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;
} }
Android学习笔记--获取传感器信息的更多相关文章
- [Android学习笔记]获取view的尺寸和坐标
对于UI方面很多时候需要获取它的很多信息,具体情况见view的文档 View文档 http://developer.android.com/training/index.html 常用方法:获取vie ...
- Android 学习笔记---获取RadioGroup的选定值
1,获取RadioGroup控件: RadioGroup radioGroup = (RadioGroup)findViewById(R.id.myRadioGroup); 2,获取RadioButt ...
- Android学习笔记-获取手机内存,SD卡存储空间。
前面介绍到如何保存数据到手机内存或者SD卡,但是问题是,在保存以前,我们还需要对他们的空间(可用空间),进行判断,才可以进行后续操作,所以,本节我们就介绍如何获取手机内存以及Sd卡的空间. //这时获 ...
- Android 学习笔记之Volley(七)实现Json数据加载和解析...
学习内容: 1.使用Volley实现异步加载Json数据... Volley的第二大请求就是通过发送请求异步实现Json数据信息的加载,加载Json数据有两种方式,一种是通过获取Json对象,然后 ...
- android学习笔记36——使用原始XML文件
XML文件 android中使用XML文件,需要开发者手动创建res/xml文件夹. 实例如下: book.xml==> <?xml version="1.0" enc ...
- Android学习笔记之JSON数据解析
转载:Android学习笔记44:JSON数据解析 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,为Web应用开发提供了一种 ...
- Android学习笔记36:使用SQLite方式存储数据
在Android中一共提供了5种数据存储方式,分别为: (1)Files:通过FileInputStream和FileOutputStream对文件进行操作.具体使用方法可以参阅博文<Andro ...
- 【转】 Pro Android学习笔记(七四):HTTP服务(8):使用后台线程AsyncTask
目录(?)[-] 5秒超时异常 AsyncTask 实现AsyncTask抽象类 对AsyncTask的调用 在哪里运行 其他重要method 文章转载只能用于非商业性质,且不能带有虚拟货币.积分.注 ...
- 【转】 Pro Android学习笔记(七五):HTTP服务(9):DownloadManager
目录(?)[-] 小例子 保存在哪里下载文件信息设置和读取 查看下载状态和取消下载 文章转载只能用于非商业性质,且不能带有虚拟货币.积分.注册等附加条件,转载须注明出处:http://blog.csd ...
随机推荐
- Entity Framewor 学习笔记 (Enum)
EF 6 支持Enum 的处理 首先说一下 mysql 和 sql server 的区别 mysql 是有 Enum 这个类型的 , insert 时是放入 int , 出来的时候它会是 string ...
- 51单片机 Keil C 延时程序的简单研究
应用单片机的时候,经常会遇到需要短时间延时的情况.需要的延时时间很短,一般都是几十到几百微妙(us).有时候还需要很高的精度,比如用单片机驱动DS18B20的时候,误差容许的范围在十几us以内,不然很 ...
- 关于 "Context" 模式(基于COM思想IUnknown思想)
有同事很喜欢用Context模式,觉得是自己"首创", 我有些自己的想法, 或者大家可以发表下自己的观点. 什么是Context模式? 23种设计模式中没有这个模式, 是同事自 ...
- qt编写一个只能运行单个实例的程序,不用Windows API
QtSingleApplicationhttp://code.qt.io/cgit/qt-solutions/qt-solutions.git/tree/qtsingleapplication 已打开 ...
- IIS 403.14 - Forbidden错误解决方法
HTTP 错误 403.14 - ForbiddenWeb 服务器被配置为不列出此目录的内容. 解决方法如下: 打开IIS的”处理程序映射设置“,在右边的操作栏下有 ”添加脚本映射“请求路径:*可执行 ...
- 读<<如何阅读一本书>>乱七八糟的笔记1
阅读层次 第一层:基础阅读 第二层:检视阅读 系统化略读 第三层:分析阅读 第四层:主题阅读(比较阅读) 第二层:检视阅读 1.有系统的粗读或略读 (1)先看书名页,然后如果有序就先看序 (2)研究目 ...
- [LeetCode] 11. Container With Most Water My Submissions Question 解题思路
Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai). ...
- 【转】ASP.NET MVC框架下使用MVVM模式-KnockOutJS+JQ模板例子
KnockOutJS学习系列----(一) 好几个月没去写博客了,最近也是因为项目紧张,不过这个不是借口,J. 很多时候可能是因为事情一多,然后没法静下来心来去写点东西,学点东西. 也很抱歉,突然看到 ...
- Oracle_Q&A_02
Step02: Import SQL FILE Step02: QUESTION & ANSWER --1查询员工姓名和职位字数相等的员工 --2查询e_name以s结尾的员工(不用like) ...
- AvalonEdit 移除自身ScrollViewer (可配合外部自定义ScrollViewer 使用)
http://community.sharpdevelop.net/forums/p/11977/42764.aspx#42764 1: <Style TargetType="{x:T ...