Android編程中光線傳感器的調(diào)用方法詳解
本文實(shí)例講述了Android編程中光線傳感器的調(diào)用方法。分享給大家供大家參考,具體如下:
1.activity如果要使用傳感器,就必須實(shí)現(xiàn)SensorEventListener接口
2.得到傳感器管理對(duì)象(sensormanager)
3.使用sensormanager.registerlistener 方法注冊(cè)指定的傳感器
4.在sensoreventlistener 接口中的onsensorchanged和onaccuracychanged方法中完成其他具體工作
public class TestActivity extends Activity {
private SensorManager sensorManager;
//第三步:對(duì)傳感器信號(hào)進(jìn)行監(jiān)聽(tīng)
private SensorEventListener listener = new SensorEventListener() {
@Override
public void onSensorChanged(SensorEvent event) {
//提示當(dāng)前光照強(qiáng)度
Toast.makeText(TestActivity.this,
"當(dāng)前光照強(qiáng)度:" + event.values[0] + "勒克斯", Toast.LENGTH_SHORT).show();
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//第一步:獲取 SensorManager 的實(shí)例
sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
//第二步:獲取 Sensor 傳感器類(lèi)型
Sensor sensor = sensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);
//第四步:注冊(cè) SensorEventListener
sensorManager.registerListener(listener,sensor,SensorManager.SENSOR_DELAY_NORMAL);
}
@Override
protected void onDestroy() {
super.onDestroy();
//傳感器使用完畢,釋放資源
if(sensorManager!=null){
sensorManager.unregisterListener(listener);
}
}
}
傳感器類(lèi)型
加速傳感器(Sensor.TYPE_ACCELEROMETER)
磁場(chǎng)傳感器(Sensor.TYPE_MAGNETIC_FLELD)
光線傳感器 (Sensor.TYPE_LIGHT )
方向傳感器 (TYPE_ORIENTATION)
Values數(shù)值
Accelerometer(加速傳感器)
values[0] :沿x軸方向加速度
values[1]: 沿 y 軸方向的加速度
values[2] : 沿 z 軸方向的加速度,也就是重力加速度
Gravity(重力感應(yīng)器)
values數(shù)組中的三個(gè)元素分別代表x軸,y軸,z軸的重力大小
Light(光線傳感器)
values數(shù)組只有第一個(gè)元素values[0]有意義,表示光線的強(qiáng)度,最大值是120000.0f.
Gyroscope( 陀螺傳感器)
values,分別表示x,y,z軸的旋轉(zhuǎn)的角速度
Orientation(方向傳感器)
values[0] : 該值表示方位,也就是手機(jī)繞著z軸旋轉(zhuǎn)的角度. 0表示北(north),90表示動(dòng)(east),180表示南(south),270表示西(west)
values[1]:表示傾斜度. x 軸傾斜時(shí),該值變化,-180<= vaules[1] <= 180
values[2]: 表示沿y軸的滾動(dòng)角度,-90<=values[2] <=90
在android2.3 sdk中,并不推薦使用sensor.TYPE_ORIENTATION,values[0]值,有時(shí)會(huì)出現(xiàn)異常。官方推薦使用SensorManager.getOrientaion的方法來(lái)獲得正確的方向
數(shù)值更新速度
SENSOR_DELAY_FASTEST: 以最快的速度獲得傳感器數(shù)據(jù)
SENSOR_DELAY_GAME: 適合與在游戲中獲得傳感器數(shù)據(jù)
SENSOR_DELAY_NORMAL: 以一般的速度獲得傳感器數(shù)據(jù)
SENSOR_DELAY_UI:適合于在ui空間中獲得數(shù)據(jù)
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Android基本組件用法總結(jié)》、《Android視圖View技巧總結(jié)》、《Android布局layout技巧總結(jié)》、《Android資源操作技巧匯總》、《Android文件操作技巧匯總》、《Android開(kāi)發(fā)入門(mén)與進(jìn)階教程》、《Android編程之a(chǎn)ctivity操作技巧總結(jié)》及《Android控件用法總結(jié)》
希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。
- Android編程之光線傳感器用法詳解
- Android編程使用光線傳感器獲取光線強(qiáng)弱的方法【LightSensorManager封裝類(lèi)】
- Android開(kāi)發(fā)中方向傳感器定義與用法詳解【附指南針實(shí)現(xiàn)方法】
- Android開(kāi)發(fā)中的重力傳感器用法實(shí)例詳解
- Android編程之方向傳感器用法示例
- android 傳感器(OnSensorChanged)使用介紹
- Android利用方向傳感器獲得手機(jī)的相對(duì)角度實(shí)例說(shuō)明
- Android 利用方向傳感器實(shí)現(xiàn)指南針具體步驟
- Android 傳感器--光照傳感器詳解及使用
- Android重力傳感器實(shí)現(xiàn)滾動(dòng)的彈球
- Android操作系統(tǒng)介紹之11種傳感器
- Android編程基于距離傳感器控制手機(jī)屏幕熄滅的方法詳解
相關(guān)文章
Android 深入探究自定義view之事件的分發(fā)機(jī)制與處理詳解
對(duì)于安卓程序員來(lái)說(shuō),自定義view簡(jiǎn)直不要太重要,畢竟有很多功能,譬如圓形頭像這些,用單純的原生非常難以實(shí)現(xiàn),而用自定義view,簡(jiǎn)直分分鐘2021-11-11
基于Android實(shí)現(xiàn)的文件同步設(shè)計(jì)方案
隨著用戶(hù)對(duì)自身數(shù)據(jù)保護(hù)意識(shí)的加強(qiáng),讓用戶(hù)自己維護(hù)自己的數(shù)據(jù)也成了獨(dú)立開(kāi)發(fā)產(chǎn)品時(shí)的一個(gè)賣(mài)點(diǎn),若只針對(duì)少量的文件進(jìn)行同步,則實(shí)現(xiàn)起來(lái)比較簡(jiǎn)單,當(dāng)針對(duì)一個(gè)多層級(jí)目錄同步時(shí),情況就復(fù)雜多了,本文我分享下我的設(shè)計(jì)思路2023-10-10
Android使用selector修改TextView中字體顏色和背景色的方法
這篇文章主要介紹了Android使用selector修改TextView中字體顏色和背景色的方法,實(shí)例分析了selector方法的相關(guān)使用技巧,需要的朋友可以參考下2016-01-01
Android中用MediaRecorder進(jìn)行錄影的實(shí)例代碼
這篇文章主要介紹了Android中用MediaRecorder進(jìn)行錄影的實(shí)例代碼,有需要的朋友可以參考一下2014-01-01
Android設(shè)置TextView首行縮進(jìn)示例代碼
使用過(guò)word的都會(huì)知道,在文字排版的時(shí)候經(jīng)常要設(shè)置首行縮進(jìn),這樣才會(huì)使排版更整齊,那么在Android中當(dāng)需要設(shè)置首行縮進(jìn)的時(shí)候該腫么辦呢,下面一起來(lái)看看。2016-08-08
MPAndroidChart繪制自定義運(yùn)動(dòng)數(shù)據(jù)圖表示例詳解
這篇文章主要為大家介紹了MPAndroidChart繪制自定義運(yùn)動(dòng)數(shù)據(jù)圖表示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-09-09
Android波紋擴(kuò)散效果之仿支付寶咻一咻功能實(shí)現(xiàn)波紋擴(kuò)散特效
這篇文章主要介紹了Android波紋擴(kuò)散效果之仿支付寶咻一咻功能實(shí)現(xiàn)波紋擴(kuò)散特效的相關(guān)資料,需要的朋友可以參考下2016-02-02

