android光线传感器(Android中的传感器之—光线传感器[亲测有效])

发布时间:2025-12-10 19:19:44 浏览次数:9

Android中的传感器之—光线传感器[亲测有效]-光线传感器app

Android中的传感器之—光线传感器[亲测有效]说到光线传感器有的人感觉用的不多,但是手机自身带的自动调节手机亮度就是使用的光线传感器,也就是手机里的光线感应器,你的手机是否开启了这个功能呢?小小的介绍那么光线感应器是个什么鬼呢?它是用来检测手机周围光线的强度,单位是lux,一般置于手机的头部,前置摄像头的附近,你可以看一下你的手机,拿手指挡住看看手机亮度是否会变暗,光线传感器和其他的传感器开发步骤是一样一样的(貌似都是这么一个流程)开发过程1.得到传感器管理者对象//获取传感器管理者对象SensorManagermSenso

说到光线传感器有的人感觉用的不多,但是手机自身带的自动调节手机亮度就是使用的光线传感器,也就是手机里的光线感应器,你的手机是否开启了这个功能呢?

小小的介绍

那么光线感应器是个什么鬼呢?它是用来检测手机周围光线的强度,单位是lux,一般置于手机的头部,前置摄像头的附近,你可以看一下你的手机,拿手指挡住看看手机亮度是否会变暗,光线传感器和其他的传感器开发步骤是一样一样的(貌似都是这么一个流程)

开发过程

1.得到传感器管理者对象

// 获取传感器管理者对象SensorManager mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);

是否还在为Ide开发工具频繁失效而烦恼,来吧关注以下公众号获取最新激活方式。亲测可用!

为防止网络爬虫,请关注公众号回复”口令”

激活idea 激活CLion DataGrip DataSpell dotCover dotMemory dotTrace GoLand PhpStorm PyCharm ReSharper ReShaC++ Rider RubyMine WebStorm 全家桶 刷新

【正版授权,激活自己账号】:Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】:官方授权 正版激活 自己使用,支持Jetbrains家族下所有IDE…

2.获得指定传感器对象,这里就是光线传感器啦

// 获取光线传感器对象Sensor sensor = sensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);

3.添加监听器,最好写在onResume()里面

sensorManager.registerListener(this,sensor,SensorManager.SENSOR_DELAY_NORMAL);

4.得到目前光线强度的值

float light = event.values[0];

5.别忘记不用的时候解除注册,不再接收传感器的更新

sensorManager.unregisterListener(this,sensor);

完整代码

public class LightActivity extends AppCompatActivity implements SensorEventListener {    private SensorManager sensorManager;    private Sensor sensor;    private TextView mTvLight;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_light);        mTvLight=findViewById(R.id.tv_light);        // 获取传感器管理者对象        sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);        // 获取光线传感器对象        sensor = sensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);    }    @Override    protected void onResume() {        super.onResume();        //添加监听器        sensorManager.registerListener(this,sensor,SensorManager.SENSOR_DELAY_NORMAL);    }    @Override    protected void onPause() {        super.onPause();        if (sensorManager != null) {            //解除注册,不再接收任何传感器的更新。            sensorManager.unregisterListener(this,sensor);        }    }    @Override    public void onSensorChanged(SensorEvent event) {        float light = event.values[0];        StringBuffer buffer = new StringBuffer();        buffer.append("现在的光照强度:").append(light).append("lux");        mTvLight.setText(buffer);    }    @Override    public void onAccuracyChanged(Sensor sensor, int accuracy) {    }}

更多手机传感器使用请看Android中的传感器(总)

需要做网站?需要网络推广?欢迎咨询客户经理 13272073477