android---加速传感器
来源:互联网 发布:mac单windows系统 编辑:程序博客网 时间:2024/05/26 12:07
1.首先获得传感器管理器的实例
sensorManager = (SensorManager) context.getSystemService(Context.SENSOR_SERVICE);
2.通过传感器管理器获得加速传感器
accelerateSensor = getSensorManager(context).getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
3.注册加速传感器的监听器
sensorManager.registerListener(listener, sensor, rate)
参数说明:
listener:加速传感器监听器实例
sensor :加速传感器实例,实现摇一摇使用的是accelerateSensor
rate :感应器反应速度,有四个常量共选择
SENSOR_DELAY_NORMAL:匹配屏幕方向的变化,默认传感器速度
SENSOR_DELAY_UI:匹配用户接口
如果更新UI建议使用SENSOR_DELAY_GAME:
匹配游戏,游戏开发建议使用SENSOR_DELAY_FASTEST.:匹配所能达到的最快
根据情况选择,一般情况选择第一种就可以
传感器监听器:SensorEventListener有两个回调方法
onSensorChanged(SensorEvent event)和onAccuracyChanged(Sensor sensor, int accuracy)
第一个是传感器值变化的相应方法
第二个是反应速度变化的相应方法
两个方法会同时被调用
onSensorChanged(SensorEvent event) 介绍
onSensorChanged(SensorEvent event)
event的实例的values变量非常重要,根据传感器的不同,里面的值代表的含义也不相同,以加速传感器为例:
values该变量的类型是float[]数组,最多有三个元素:
float x = values[0] 代表X轴
float y = values[1] 代表Y轴
float z = values[2] 代表Y轴
public class ShakeSensorListener implements SensorEventListener { @Override public void onSensorChanged(SensorEvent sensorEvent) { int sensorType=sensorEvent.sensor.getType(); float []values=sensorEvent.values; float x = Math.abs(values[0]); float y = Math.abs(values[1]); float z = Math.abs(values[2]); if (sensorType==Sensor.TYPE_ACCELEROMETER){ int ACCELERATE_VALUE=15;//传感器阈值 if (x >= ACCELERATE_VALUE || y >= ACCELERATE_VALUE || z >= ACCELERATE_VALUE) { Toast.makeText( MainActivity.this, "accelerate speed :" + (x >= ACCELERATE_VALUE ? x : y >= ACCELERATE_VALUE ? y : z), Toast.LENGTH_SHORT).show(); long[]patterns={100,1000,100,400};//静止时间 震动时间 VibrateHelper.Vibrate(MainActivity.this,patterns,false); Log.i("zy","摇到没"); } } }
0 0
- android---加速传感器
- android 加速的传感器(重力传感器)
- 加速传感器
- Android 传感器之《加速传感器》——摇一摇功能
- 传感器之加速传感器
- Android-加速传感器或者OrientationEventListener做横竖屏切换
- Android中加速和位置传感器的使用
- Android——加速传感器(ACCELEROMETER)的应用
- 重力加速传感器 mma7660
- 重力加速传感器 mma7660
- ios 加速传感器UIAccelerometer
- libgdx 处理加速传感器
- swift 加速传感器
- Pro Android学习笔记(一五四):传感器(4):陀螺仪、加速传感器
- Pro Android学习笔记(一五四):传感器(4):陀螺仪、加速传感器
- Pro Android学习笔记(一五四):传感器(4):陀螺仪、加速传感器
- 安卓加速传感器开发
- unity加速传感器的应用
- MySQL Group Replication 正式发布
- 读取Java文件到byte数组的三种方式
- eclipse配置文件导出,并给新工作空间使用
- eclipse安装时出现Installation error: INSTALL_FAILED_UPDATE_INCOMPATIBLE
- ZooKeeper搭建系列集+
- android---加速传感器
- ASP.NET 电影票信息的增删查改
- jquery table合并单元格
- Oracle的sql常用技巧
- Nginx学习总结(4)——负载均衡session会话保持方法
- 【Unity3D实战】零基础一步一步教你制作酷跑类游戏(1)
- Java实现一个简单的RPC框架(六) 注册机制
- Spring命名空间介绍
- 远程桌面不能复制粘贴解决办法