Android获取手机光照传感器的值 工具类
程序员文章站
2022-04-19 10:22:22
...
帮别人写的工具类。其实在Activity中直接写原始代码会更简单。
package com.example.myapplication01;
import android.content.Context;
import android.hardware.Sensor;
import android.hardware.SensorEvent;
import android.hardware.SensorEventListener;
import android.hardware.SensorManager;
public class LightSensorUtils implements SensorEventListener{
private SensorManager sensorManager;//传感器管理器
private Sensor light;//光照传感器
private LightListener lightListener;
public void setLightListener(LightListener lightListener) {
this.lightListener = lightListener;
}
public LightSensorUtils(Context context) {
sensorManager = (SensorManager) context.getSystemService(Context.SENSOR_SERVICE);
light = sensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);
}
@Override
public void onSensorChanged(SensorEvent event) {
if (light.equals(event.sensor)) {
lightListener.getLight(event.values[0]);
}
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}
/**
* 在activity的onresume中调用此方法
*/
public void registerLight(){
sensorManager.registerListener(this, light, SensorManager.SENSOR_DELAY_NORMAL);
}
/**
* 在activity的onpause中调用此方法
*/
public void unregisterLight(){
sensorManager.unregisterListener(this);
}
public interface LightListener{
void getLight(float value);
}
}
在Acitivty中的使用方法
下一篇: 小白笔记(手机端事件)
推荐阅读
-
Android编程使用光线传感器获取光线强弱的方法【LightSensorManager封装类】
-
Android开发实现的获取sdcard大小及内存大小工具类
-
android实用工具类分享(获取内存/检查网络/屏幕高度/手机分辨率)
-
Android屏幕适配工具类 Android自动生成不同分辨率的值
-
Android检查账号,密码,身份证,邮箱,手机号有效性的工具类,仿QQ满足条件后变蓝
-
Android手机屏幕px与dp互转的工具类
-
Android获取手机信息的工具类
-
android实用工具类分享(获取内存/检查网络/屏幕高度/手机分辨率)
-
Android屏幕适配工具类 Android自动生成不同分辨率的值
-
【Java】利用json工具类,传入字段名,获取集合中的对象属性值集合