Android 获取加速传感器的值,并去除杂音
1、注册和注销传感器
private void registerSensor() {
manager.registerListener(this,
manager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),
SensorManager.SENSOR_DELAY_NORMAL);
manager.registerListener(this,
manager.getDefaultSensor(Sensor.TYPE_GRAVITY),
SensorManager.SENSOR_DELAY_NORMAL);
}
private void unregisterSensor() {
manager.unregisterListener(this);
}
2、执行注册和注销
@Override
protected void onResume() {
super.onResume(); registerSensor();
} @Override
protected void onPause() {
super.onPause(); unregisterSensor();
}
3、实现SensorEventListener,获取加速传感器的值,并去除杂音
@Override
public void onSensorChanged(SensorEvent event) {
switch (event.sensor.getType()) {
case Sensor.TYPE_ACCELEROMETER:
float[] values = event.values;
gravityValues[0] = gravityValues[0] * alpha + (1 - alpha) * values[0];
gravityValues[1] = gravityValues[1] * alpha + (1 - alpha) * values[1];
gravityValues[2] = gravityValues[2] * alpha + (1 - alpha) * values[2]; String strAccelerometer = String.format(Locale.CHINA,
">>>>>>>>Accelerometer X:%f, Y:%f, Z:%f", event.values[0] - gravityValues[0],
event.values[1] - gravityValues[1], event.values[2] - gravityValues[2]);
System.out.println(strAccelerometer);
break; case Sensor.TYPE_GRAVITY:
gravityValues[0] = event.values[0];
gravityValues[1] = event.values[1];
gravityValues[2] = event.values[2];
break; default:
break;
}
} @Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
// TODO Auto-generated method stub }
Android 获取加速传感器的值,并去除杂音的更多相关文章
- android获取string.xml的值(转)
为什么需要把应用中出现的文字单独存放在string.xml文件中呢? 一:是为了国际化,当需要国际化时,只需要再提供一个string.xml文件,把里面的汉子信息都修改为对应的语言(如,English ...
- android获取string.xml的值
在android开发过程中,编写java代码中的常量过一般情况下,我们是定义在string.xml这个文件中.这样修改起来也很方便,而且做国际化也很简单. 这个string.xml的值会被R文件映射, ...
- Android获取文件的MD5值
package my.bag; import java.io.File; import java.io.FileInputStream; import java.math.BigInteger; im ...
- 获取程序的SHA1值
android获取程序的SHA1值 public static String getSHA1(Context context) { try { PackageInfo info = context.g ...
- Android的加速度传感器模拟摇一摇的效果-android学习之旅(66)
主要介绍一下android的加速传感器的简单用法,模拟摇一摇 ,如果x,y,z三个方向的加速度超过了15,就会弹出Toast,当然你可以设置更复杂的策略,比如判断间隔 代码如下 public clas ...
- ESP8266 NodeMCU小白手把手入门(实操篇)以土壤湿度和DHT传感器为例讲解读取传感器的值
物联网使得现实世界中的实体和数字世界比以往任何时候都更紧密地联系在一起.NodeMCU作为其中的一个重要设备,作用之一就是与传感器相连以实现万物互联通讯.这篇关于NodeMCU的实操篇以土壤湿度传感器 ...
- Pro Android学习笔记(一五四):传感器(4):陀螺仪、加速传感器
文章转载只能用于非商业性质,且不能带有虚拟货币.积分.注册等附加条件.转载须注明出处http://blog.csdn.net/flowingflying/以及作者@恺风Wei. 陀螺仪 陀螺仪(Gyr ...
- Android之使用传感器获取相应数据
Android的大部分手机中都有传感器,传感器类型有方向.加速度(重力).光线.磁场.距离(临近性).温度等. 方向传感器: Sensor.TYPE_ORIENTATION 加速度(重力)传感器: ...
- 无废话Android之activity的生命周期、activity的启动模式、activity横竖屏切换的生命周期、开启新的activity获取他的返回值、利用广播实现ip拨号、短信接收广播、短信监听器(6)
1.activity的生命周期 这七个方法定义了Activity的完整生命周期.实现这些方法可以帮助我们监视其中的三个嵌套生命周期循环: (1)Activity的完整生命周期 自第一次调用onCrea ...
随机推荐
- pycharm 取消空格,逗号 等符号的自动补全
- 向大家推荐一个在.Net下使用C#语言和Managed DirectX 9开发游戏的视频教程
视频教程:3D游戏开发步步高系列课程(微软课堂).美中不足的是视频的声音和画面不太对应.专心的听声音,听老师讲解吧. PPT和源码下载:3D游戏开发步步高系列课程-PPT和源码 网址链接:3D游戏开发 ...
- jsp泛型支持
今天在使用idea做练习时,某个jsp页面报错如下: '<>'operator is not allowed for source level below 1.7 出错代码如下: Map& ...
- 最长公共子串(LCS:Longest Common Substring)
最长公共子串(LCS:Longest Common Substring)是一个非常经典的面试题目,本人在乐视二面中被面试官问过,惨败在该题目中. 什么是最长公共子串 最长公共子串问题的基本表述为:给定 ...
- day29
今日内容: 异常处理 元类介绍 元类(通过元类中的__init__方法,改变实例化获得的类) 元类(通过元类中的__call__方法,改变实例化获得的类实例化出来的对象) 1.异常处理: 什么是异常处 ...
- 常用的php数组函数
以下是自己比较常用的数组函数 数组元素增加减少array_pusharray_poparray_shiftarray_unshift array_splice (对数组的增删改) array_sli ...
- a标签按钮样式
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- 深入解析Java中的装箱和拆箱
自己主动装箱和拆箱问题是Java中一个老生常谈的问题了,今天我们就来一些看一下装箱和拆箱中的若干问题.本文先讲述装箱和拆箱最主要的东西,再来看一以下试笔试中常常遇到的与装箱.拆箱相关的问题. 下面是本 ...
- 允许Ubuntu系统下Mysql数据库远程连接
第一步: vim /etc/mysql/my.cnf找到bind-address = 127.0.0.1 注释掉这行,如:#bind-address = 127.0.0.1 或者改为: bind-ad ...
- China Internet Conference(2018.07.12)
中国互联网大会 时间:2018.07.12地点:北京国家会议中心