《Android 编程之加速度传感器》由会员分享,可在线阅读,更多相关《Android 编程之加速度传感器(11页珍藏版)》请在金锄头文库上搜索。
1、AndroidAndroid编编程程加速度传感器使用2024/8/32011013077段道兵软件111班传感器管理器获传感器管理器获取取1)Android所有的传感器都归传感器管理器 SensorManager管理,获取传感器管理器的方法: Stringservice_name=Context.SENSOR_SERVICE;SensorManagersensorManager=(SensorManager)getSystemService(service_name);2024/8/32011013077段道兵软件111班获取特定传感器获取特定传感器2)从传感器管理器中获取其中某个或者某些传感
2、器的方法有如下三种: 第一种:获取某种传感器的默认传感器 SensordefaultGyroscope=sensorManager.getDefaultSensor(Sensor.TYPE_GYROSCOPE);2024/8/32011013077段道兵软件111班获取特定传感器获取特定传感器2)从传感器管理器中获取其中某个或者某些传感器的方法有如下三种:第二种:获取某种传感器的列表 ListpressureSensors=sensorManager.getSensorList(Sensor.TYPE_PRESSURE);2024/8/32011013077段道兵软件111班获取特定传感器获取
3、特定传感器2)从传感器管理器中获取其中某个或者某些传感器的方法有如下三种: 第三种:获取所有传感器的列表 ListallSensors=sensorManager.getSensorList(Sensor.TYPE_ALL);2024/8/32011013077段道兵软件111班定义传定义传感感器监听器监听器并安装器并安装3)定义传感器监听器,用于监听传感器,如: SensorEventListeneracceleromererListener=new SensorEventListener()Override public void onAccuracyChanged(Sensor sens
4、or, int accuracy) /传感器精度的改传感器精度的改变变 / TODO something 2024/8/32011013077段道兵软件111班定义传定义传感感器监听器监听器并安装器并安装3)定义传感器监听器,用于监听传感器,如: Override public void onSensorChanged(SensorEvent event) /传感器数据变动事件/TODO something 2024/8/32011013077段道兵软件111班获取传获取传感感器信息器信息4)对于某一个传感器,它的一些具体信息的获取方法可以见下表:2024/8/32011013077段道兵软件
5、111班传感传感器状态判断器状态判断5)根据传感器的状态的变化判断出用户的操作,如:在使用加速度传感器时可以通过传感器数值判断手机是否在摇晃: a.记录acceleromererSensor的三个参数x、y、z; b.每个100毫秒检测一次:看是不是刚开始晃动,是则记录开始事件,否则记录每次晃动幅度;2024/8/32011013077段道兵软件111班传感传感器状态判断器状态判断5)根据传感器的状态的变化判断出用户的操作,如:在使用加速度传感器时可以通过传感器数值判断手机是否在摇晃: c.把每次的晃动幅度相加,得到总体晃动幅度 d.根据摇动幅度判断是否为用户的刻意操作,是则执行对应事件,否则返回is2024/8/32011013077段道兵软件111班2024/8/32011013077段道兵软件111班