Android 設(shè)備中有許多傳感器,其中有一個(gè)傳感器控制著你屏幕亮度的變化。當(dāng)你在很暗的地方使用手機(jī),你設(shè)備的屏幕會(huì)自動(dòng)調(diào)暗,從而保護(hù)你眼睛。
起著這樣作用,Android是通過一款光照傳感器來獲取你周圍環(huán)境亮度的變化。光照傳感器一般在手機(jī)的頂部的位置。
要在程序中使用這款傳感器
(1)首先要獲取SensorManager傳感器管理器服務(wù):SensorManager sensorManager=(SensorManager)getSystemService(Context.SENSOR_SERVICE);
(2)獲取光照傳感器:Sensor liaghtSensor=sensorManager.getDefaultSensor(Sensor.TYPE_LIGHT)//Sensor.TYPE_LIGHT 代表光照傳感器
(3)注冊(cè)和監(jiān)視光照傳感器:
sensorManager.registerListener(new SensorEventListener() { @Override public void onSensorChanged(SensorEvent event) {//監(jiān)視傳感器的改變//accuracy 傳感器的精度 通過event.accuracy獲取//values 傳感器傳回的數(shù)值 如event.values[0] 獲取光線強(qiáng)度lux//timestamp 傳感器事件發(fā)生的時(shí)間(以納秒為單位)} @Override public void onAccuracyChanged(Sensor sensor, int accuracy) {//對(duì)傳感器精度的改變做出反應(yīng)} }, sensor, SensorManager.SENSOR_DELAY_NORMAL);一個(gè)簡(jiǎn)單的獲取光照傳感器光線強(qiáng)度lux的代碼:
public class MainActivity extends Activity { private TextView value_tv; private SensorManager sensorMamager; private Sensor sensor; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); value_tv=(TextView) findViewById(R.id.value_tv); //獲取SensorManager對(duì)象 sensorMamager=(SensorManager) getSystemService(SENSOR_SERVICE); //獲取Sensor對(duì)象 sensor=sensorMamager.getDefaultSensor(Sensor.TYPE_LIGHT); sensorMamager.registerListener(new SensorEventListener() { @Override public void onSensorChanged(SensorEvent event) { //獲取精度 float acc = event.accuracy; //獲取光線強(qiáng)度 float lux = event.values[0]; value_tv.setText("acc:"+acc+";"+"lux:"+lux); } @Override public void onAccuracyChanged(Sensor sensor, int accuracy) { // TODO 自動(dòng)生成的方法存根 } }, sensor, SensorManager.SENSOR_DELAY_NORMAL); }} 對(duì)于一些程序,在改變當(dāng)前程序屏幕亮度的時(shí)候,可以考慮加入光照傳感器的判斷。
因?yàn)榇蟛糠诌@些程序,會(huì)出現(xiàn)這樣的一個(gè)問題,當(dāng)(在非自動(dòng)亮度調(diào)節(jié)模式)設(shè)定屏幕亮度為一個(gè)值時(shí),再設(shè)置為自動(dòng)亮度調(diào)節(jié)模式的時(shí)候是無效的。
以上就是對(duì)Android 傳感器 光照傳感的資料整理,后續(xù)繼續(xù)補(bǔ)充相關(guān)資料,謝謝大家對(duì)本站的支持!
新聞熱點(diǎn)
疑難解答
圖片精選