




已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
Android傳感器編程知識點概述:1. 傳感器的概念2. Android中傳感器的種類3. Android中傳感器的功能知識點詳述:1. 傳感器的概念傳感器是一種物理裝置或生物器官,能夠探測、感受外界的信號、物理條件(如光、熱、濕度)或化學組成(如煙霧),并將探知的信息傳遞給其它裝置或器官。同時也可以說傳感器是一種檢測裝置,能感受被測量的信息,并能將檢測的感受到的信息,按一定規(guī)律變換成為電信號或其它所需形式的信息輸出,以滿足信息的傳輸、處理、存儲、顯示、記錄和控制等要求。它是實現自動檢測和自動控制的首要環(huán)節(jié)。根據工作原理,傳感器可分為物理傳感器和化學傳感器兩大類。物理傳感器應用的是物理效應,諸如離化、極化、熱電、光電、磁電等效應。被測信號量的微小變化都將轉換成電信號?;瘜W傳感器包括哪些以化學吸附、電化學反應等現象為因果關系的傳感器。被測信號量的微小變化也將轉換成電信號。注:目前大多數傳感器是以物理原理為基礎運作的。2. Android中傳感器的種類Android操作系統(tǒng)中內置了很多傳感器,同時傳感器也成為了手機硬件的重要組成部分。比如在部分游戲或應用軟件中可以自動識別屏幕的橫屏、豎屏方向來改變屏幕顯示布局,這就是因為手機硬件支持了重力感應、方向判斷等功能。在Android中支持下面幾種傳感器:l Sensor.GRAVITY: 重力傳感器l Sensor.TYPE_ACCELEROMETER: 加速度傳感器l Sensor.TYPE_GYROSCOPE: 陀螺儀傳感器l Sensor.TYPE_LIGHT: 亮度(光線)傳感器l Sensor.TYPE_MAGNETIC_FIELD: 地磁傳感器l Sensor.TYPE_ORIENTATION: 方向傳感器l Sensor.TYPE_PRESSURE: 壓力傳感器l Sensor.TYPE_PROXIMITY: 近程傳感器l Sensor.TYPE_TEMPERATURE: 溫度傳感器3. Android中傳感器的功能在Android中使用傳感器,首先需要了解SensorManager和SensorEventListener.SensorManager是所有傳感器的一個綜合管理類,包括了傳感器的種類、采樣率、精準度等??梢酝ㄟ^getSystemService方法來獲取一個SensorManager實例。代碼如下:SensorManager mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);取得SensorManager實例之后,可以通過getSensorList方法來獲得需要的傳感器類型,存到一個傳感器列表中,如下代碼可以得到以下方向傳感器:List sensors = mSensorManager.getSensorList(Sensor.TYPE_ORIENTATION);要與傳感器交互,應用程序中必須注冊相關的傳感器, 當不再用時還要注銷.代碼如下:/注冊傳感器/參數一表示接收信號的Listener實例/參數二表示想接收的傳感器類型/參數三表示接收頻度, SensorManager.SENSOR_DELAY_ FASTEST表示盡可能快地獲得傳感器數據Boolean mRegisteredSensor = mSensorManager.registerListener(this, sensor, SensorManager.SENSOR_DELAY_FASTEST);/注銷傳感器mSensorManager.unregisterListener(this);SensorEventListener是使用傳感器的核心,包括以下兩個方法必須實現:l onSensorChanged(SensorEvent event)方法在傳感器值更改時調用.該方法只由受此應用程序監(jiān)視的傳感器調用.該方法的參數是一個SensorEvent對象,該對象主要包括一組浮點數,表示傳感器獲得的方向、加速度等信息。如以下代碼可以取得其值:float x = event.valuesSensorManager.DATA_X;float y = event.valuesSensorManager.DATA_Y;float z = event.valuesSensorManager.DATA_Z;注: 其中SensorEvent類的values變量非常重要,該變量的類型是float。但該變量最多只有3個元素,而且根據傳感器的不同,values變量中元素所代表的含義也不同。在方向傳感器中values變量的3個值都表示度數,它們的含義如下:values0:該值表示方位,也就是手機繞著Z軸旋轉的角度。0表示北(North);90表示東(East);180表示南(South);270表示西(West), 可以利用這個特性來實現電子羅盤。values1:該值表示傾斜度,或手機翹起的程度。當手機繞著X軸傾斜時該值發(fā)生變化。values1的取值范圍是-180values1180。假設將手機屏幕朝上水平放在桌子上,這時如果桌子是完全水平的,values1的值應該是0。這時從手機頂部開始抬起,直到將手機沿X軸旋轉180度(屏幕向下水平放在桌面上)。在這個旋轉過程中,values1會在0到-180之間變化,也就是說,從手機頂部抬起時,values1的值會逐漸變小,直到等于-180。如果從手機底部開始抬起,直到將手機沿X軸旋轉180度,這時values1會在0到180之間變化。也就是values1的值會逐漸增大,直到等于180??梢岳胿alues1和下面要介紹的values2來測量桌子等物體的傾斜度。values2:表示手機沿著Y軸的滾動角度。取值范圍是-90values290。假設將手機屏幕朝上水平放在桌面上,這時如果桌面是平的,values2的值應為0。將手機左側逐漸抬起時,values2的值逐漸變小,直到手機垂直于桌面放置,這時values2的值是-90。將手機右側逐漸抬起時,values2的值逐漸增大,直到手機垂直于桌面放置,這時values2的值
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國防靜電T/C面料市場分析及競爭策略研究報告
- 2025至2030年中國女式短款羽絨服市場分析及競爭策略研究報告
- 2025至2030年中國口香糖架市場分析及競爭策略研究報告
- 護理新技術新項目總結
- 醫(yī)院等級復審培訓
- 誰是最可愛的人
- 大隊委策劃方案活動
- 籃球培訓創(chuàng)業(yè)策劃
- 述職流程模板
- 期貨策略面試題目和答案
- 2025年廣東省高考政治試卷真題(含答案解析)
- Unit 2 Home Sweet Home 第2課時(Section A Pronunciation 2a-2e) 2025-2026學年人教版英語八年級下冊
- 事故隱患內部報告獎勵制度模板三
- 2025年中國繼電保護裝置行業(yè)市場調查、投資前景及策略咨詢報告
- 2025-2030年中國非球面玻璃鏡片行業(yè)市場現狀供需分析及投資評估規(guī)劃分析研究報告
- 2025至2030年中國液壓元件行業(yè)市場競爭態(tài)勢及發(fā)展趨向研判報告
- 碧桂園案場管理制度
- 房地產營銷績效評估與分析
- 2025年報關操作技巧與核心要點
- 《基礎護理學》第七版考試題庫大全-上部分(600題)
- 2025年日歷( 每2個月一張打印版)
評論
0/150
提交評論