




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
《騰訊1+x安卓應(yīng)用開發(fā)(中級)》教案
一、教案設(shè)計課題項(xiàng)目4任務(wù)1認(rèn)識安卓傳感器課型理論課理論課時2課時實(shí)踐課時2課時教學(xué)目標(biāo)知識目標(biāo)能力(技能)目標(biāo)理解Android平臺支持三大類傳感器及其特點(diǎn)。能夠獲取Android設(shè)備支持的傳感器。教學(xué)重點(diǎn)掌握獲取Android設(shè)備支持的傳感器的方法。教學(xué)難點(diǎn)理解不同傳感器的應(yīng)用場合。教學(xué)內(nèi)容Android平臺支持三大類傳感器:位移傳感器、環(huán)境傳感器和位置傳感器。位移傳感器包括加速度傳感器,重力傳感器,陀螺儀和旋轉(zhuǎn)適量傳感器。這些傳感器沿三條軸線測量加速度和旋轉(zhuǎn)力度。環(huán)境傳感器包括氣壓,光線和溫度傳感器。用來測量各種環(huán)境參數(shù)。位置傳感器包含方向和磁力傳感器,用來測量設(shè)備的物理位置。Android系統(tǒng)負(fù)責(zé)將這些傳感器所輸出的信息傳遞給開發(fā)者,開發(fā)者可以利用這些信息開發(fā)很多應(yīng)用。例如,市場上的賽車游戲使用的就是重力傳感器、微信的搖一搖使用的是加速度傳感器。Android系統(tǒng)提供了一個類android.hardware.Sensor代表傳感器,該類將不同的傳感器封裝成了常量,具體見表7-1。表7-1傳感器常量傳感器類型常量內(nèi)部
整數(shù)值中文名稱Sensor.TYPE_ACCELEROMETER1加速度傳感器Sensor.TYPE_MAGNETIC_FIELD2磁力傳感器Sensor.TYPE_ORIENTATION3方向傳感器
(廢棄,但依然可用)Sensor.TYPE_GYROSCOPE4陀螺儀傳感器Sensor.TYPE_LIGHT5環(huán)境光照傳感器Sensor.TYPE_PRESSURE6壓力傳感器Sensor.TYPE_TEMPERATURE7溫度傳感器
(廢棄,但依然可用)Sensor.TYPE_PROXIMITY8距離傳感器Sensor.TYPE_GRAVITY9重力傳感器Sensor.TYPE_LINEAR_ACCELERATION10線性加速度Sensor.TYPE_ROTATION_VECTOR11旋轉(zhuǎn)矢量Sensor.TYPE_RELATIVE_HUMIDITY12濕度傳感器Sensor.TYPE_AMBIENT_TEMPERATURE13溫度傳感器(4.0之后替代TYPE_TEMPERATURE)教學(xué)準(zhǔn)備教材,PPT、教綱、教案參考資料/guide/topics/sensors?hl=zh_cn教學(xué)過程方法與手段教學(xué)備注【課堂導(dǎo)入】傳感器在Android應(yīng)用中起到什么作用呢?傳感器(Sensor)系統(tǒng)可以讓智能手機(jī)的功能更加豐富多彩,在Android系統(tǒng)中支持多種傳感器。本任務(wù)我們將解決如何獲取移動設(shè)備上的傳感器及其數(shù)值的問題?!窘虒W(xué)實(shí)施】7.1.1任務(wù)描述能夠獲取Android設(shè)備支持的傳感器,并檢測傳感器數(shù)值的變化。7.1.2問題引導(dǎo)傳感器在Android應(yīng)用中起到什么作用呢?傳感器(Sensor)系統(tǒng)可以讓智能手機(jī)的功能更加豐富多彩,在Android系統(tǒng)中支持多種傳感器。本任務(wù)我們將解決如何獲取移動設(shè)備上的傳感器及其數(shù)值的問題。7.1.3知識準(zhǔn)備Android平臺支持三大類傳感器介紹獲取傳感器管理器SensorManager獲取某一類型的傳感器設(shè)置傳感器監(jiān)聽器注冊傳感器注銷傳感器7.1.4完成傳感器及其數(shù)值的獲取7.1.5知識拓展不同組織對“傳感器”的定義【知識(技能)鞏固練習(xí)】獲取手機(jī)能使用的所有傳感器,并顯示其名稱?!窘虒W(xué)小結(jié)】講授、演示課后作業(yè)與訓(xùn)練完成項(xiàng)目4課后練習(xí)對應(yīng)的習(xí)題。教學(xué)反思
課題項(xiàng)目4任務(wù)2方向傳感器的使用課型理論課理論課時2課時實(shí)踐課時2課時教學(xué)目標(biāo)知識目標(biāo)能力(技能)目標(biāo)能夠熟悉安卓系統(tǒng)下常用方向類傳感器。能夠創(chuàng)建方向感知應(yīng)用,并能正確運(yùn)行。教學(xué)重點(diǎn)正確獲取方向傳感器數(shù)值教學(xué)難點(diǎn)對方向傳感器數(shù)值的靈活運(yùn)用。教學(xué)內(nèi)容1.方向傳感器介紹方向傳感器的類型常量是Sensor.TYPE_ORIENTATION。當(dāng)方向傳感器的數(shù)值發(fā)生變化時會回調(diào)onSensorChanged(SensorEventevent)方法,這個方法的參數(shù)event包含3個值,分別是event.values[0]、event.values[1]和event.values[2],它們的含義見表7-2。表7-2方向傳感器SensorEvent3個值的含義event.values[0]對應(yīng)磁北方向和y軸之間的角度,圍繞z軸(0°到359°)。0°=北,90°=東,180°=南,270°=西event.values[1]對應(yīng)x軸和水平面的夾角。圍繞x軸旋轉(zhuǎn)(-180°到180°),當(dāng)z軸向y軸移動時角度為正值。event.values[2]對應(yīng)y軸和水平面的夾角。隨著設(shè)備順時針移動,圍繞y軸(-90至90)旋轉(zhuǎn)。2.使用方向傳感器設(shè)計一個指南針(1)創(chuàng)建一個類CompassView,創(chuàng)建一個Activity,將其命名為CompassActivity。(2)在CompassView類中,定義setSensorManager()方法,用來注冊方向傳感器。(3)在CompassView類中,定義OnCustomSensorListener接口,在接口中,定義onSensorChanged()方法用來感知方向傳感器值的變化,定義onCompass()用來記錄指南針的方位和角度。(4)CompassView類實(shí)現(xiàn)接口SensorEventListener,并重寫其方法onSensorChanged()和onAccuracyChanged()。在onSensorChanged()中,通過傳感器傳遞的3個值——event.values[0]、event.values[1]和event.values[2],分別計算方位角、傾斜角和滾動角。然后調(diào)用updateDirection()方法計算方位。(5)修改CompassView類的4參構(gòu)造方法,開啟工作線程,每100毫秒重新繪制一次,以便在指南針表盤上及時顯示新的角度和方位。(6)在CompassView類中,創(chuàng)建接口類型變量,并定義setCustomSensorListener()方法用來傳遞一個接口對象實(shí)例,以便暴露設(shè)置接口的方法。(7)在CompassView類中,定義invalidView()方法用來注銷傳感器。(8)在CompassActivity中,獲取傳感器管理器,并調(diào)用cView的setSensorManager()注冊傳感器的監(jiān)聽事件。需要注意的是,這些代碼要放在setContentView(cView)之前。(9)在CompassActivity中,cView的setCustomSensorListener()方法,使用匿名內(nèi)部類實(shí)現(xiàn)接口的兩個方法。(10)在CompassActivity中,重寫onDestroy()方法,調(diào)用步驟8定義好的invalidView(),以便Activity銷毀時注銷傳感器。教學(xué)準(zhǔn)備教材,PPT、教綱、教案參考資料/guide/topics/sensors?hl=zh_cn教學(xué)過程方法與手段教學(xué)備注【課堂導(dǎo)入】Android系統(tǒng)中的方向傳感器在生活中典型的應(yīng)用是指南針,指南針是如何實(shí)現(xiàn)方位指向的呢?利用方向傳感器為我們返回的三個值,可以計算出方位和角度?!窘虒W(xué)實(shí)施】7.2.1任務(wù)描述使用方向傳感器設(shè)計一個指南針。在指南針表盤上顯示方位和角度。效果如圖所示。7.2.2問題引導(dǎo)Android系統(tǒng)中的方向傳感器在生活中典型的應(yīng)用是指南針,指南針是如何實(shí)現(xiàn)方位指向的呢?利用方向傳感器為我們返回的三個值,可以計算出方位和角度。7.2.3知識準(zhǔn)備方向傳感器介紹使用方向傳感器設(shè)計一個指南針的步驟7.2.4實(shí)現(xiàn)指南針的設(shè)計。7.2.5知識拓展在Android平臺中,傳感器框的三維坐標(biāo)系【知識(技能)鞏固練習(xí)】獲取方向傳感器三個方向的值?!窘虒W(xué)小結(jié)】講授、演示課后作業(yè)與訓(xùn)練完成項(xiàng)目4課后練習(xí)對應(yīng)的習(xí)題。教學(xué)反思
課題項(xiàng)目4任務(wù)3加速度傳感器的使用課型理論課理論課時2課時實(shí)踐課時2課時教學(xué)目標(biāo)知識目標(biāo)能力(技能)目標(biāo)能夠熟悉安卓系統(tǒng)下常用加速度類傳感器。能夠響應(yīng)設(shè)備移動,創(chuàng)建相關(guān)應(yīng)用,并能正確運(yùn)行。教學(xué)重點(diǎn)正確獲取加速度傳感器數(shù)值教學(xué)難點(diǎn)對加速度傳感器數(shù)值的靈活運(yùn)用。教學(xué)內(nèi)容1.加速度傳感器簡介加速度傳感器的類型常量是Sensor.TYPE_ACCELEROMETER。當(dāng)加速度傳感器的數(shù)值發(fā)生變化時會回調(diào)onSensorChanged(SensorEventevent)方法,這個方法的參數(shù)event包含3個值,分別是event.values[0]、event.values[1]和event.values[2],它們的含義見表7-3。表7-3加速度傳感器SensorEvent3個值的含義event.values[0]左右移動的加速度event.values[1]前后移動的加速度event.values[2]上下移動的加速度2.加速度傳感器計步原理利用三軸加速度傳感器能檢測人步行中三個方向的加速度變化。用戶在水平步行運(yùn)動中,在收腳的動作中,由于重心向上單腳觸地,垂直方向加速度呈正向增加的趨勢,之后繼續(xù)向前,重心下移兩腳觸底,加速度相反。水平加速度在收腳時減小,在邁步時增加。垂直和前進(jìn)兩個方向的加速度呈現(xiàn)周期性變化,三個加速度的矢量長度與時間形成的軌跡大致為一個正弦曲線,而且在某點(diǎn)有一個峰值。一個正弦波形代表一步。首先記錄上次矢量長度和運(yùn)動方向,通過矢量長度的變化,可以判斷當(dāng)前加速度的方向,并和上一次保存的加速度方向進(jìn)行比較。如果是相反的,即是剛過峰值狀態(tài),則進(jìn)入計步邏輯進(jìn)行計步,否則就舍棄。通過對軌跡的峰值進(jìn)行檢測累加和加速度閥值決策,即可計算用戶運(yùn)動的步數(shù)。又因?yàn)?,人的反射神?jīng)決定了人運(yùn)動的極限,兩步之間不可能小于200毫秒,因此將時間閾值設(shè)為200毫秒,如果兩次計步之間的時間間隔小于200毫秒,則不計步。3.使用加速度傳感器設(shè)計一個計步器(1)創(chuàng)建一個EmptyActivity,將其命名為CountStepActivity。(2)設(shè)置CountStepActivity的布局文件。采用線性布局,放置兩個TextView和一個Button。(3)在CountStepActivity的onCreate()方法中,獲取傳感器管理器,獲取加速度傳感器,并注冊傳感器的監(jiān)聽事件。(4)CountStepActivity類實(shí)現(xiàn)接口SensorEventListener,并復(fù)寫其方法onSensorChanged()和onAccuracyChanged()。在onSensorChanged()中,通過傳感器傳遞的3個值——event.values[0]、event.values[1]和event.values[2],計算三個加速度的矢量長度。并進(jìn)行峰值檢測,配合加速度閾值和時間閾值,對步數(shù)進(jìn)行累加和顯示。(5)設(shè)置按鈕的點(diǎn)擊事件監(jiān)聽器,并讓CountStepActivity實(shí)現(xiàn)View.OnClickListener接口,在其實(shí)現(xiàn)方法onClick()中對按鈕和文本框做一些初始設(shè)置。(6)當(dāng)CountStepActivity被銷毀時,會回調(diào)onDestroy()方法,在該方法中注銷傳感器。教學(xué)準(zhǔn)備教材,PPT、教綱、教案參考資料/guide/topics/sensors?hl=zh_cn教學(xué)過程方法與手段教學(xué)備注【課堂導(dǎo)入】加速度傳感器是如何感知步數(shù)變化的呢?加速度傳感器有x,y,z三個軸。通過傳感器返回的三個值能檢測人步行中三個方向的加速度變化。【教學(xué)實(shí)施】7.3.1任務(wù)描述使用加速度傳感器設(shè)計一個計步器。當(dāng)點(diǎn)擊“START”按鈕后時能實(shí)時更新步數(shù),并且按鈕文字變?yōu)椤癝TOP”,當(dāng)點(diǎn)擊“STOP
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)家書屋可持續(xù)發(fā)展影響因素分析與對策研究
- 公司定崗定級管理制度
- 2025企業(yè)新進(jìn)員工試用期合同
- 福建省連城縣2024~2025學(xué)年 高二下冊3月月考數(shù)學(xué)試卷附解析
- 安徽省合肥市2024-2025學(xué)年高三下冊2月檢測數(shù)學(xué)試卷附解析
- 2024年杭州建德市醫(yī)療衛(wèi)生事業(yè)單位招聘真題
- 孩子畢業(yè)家長發(fā)言材料
- 2024年貴州省糧食儲備集團(tuán)有限公司招聘考試真題
- 社區(qū)社區(qū)服務(wù)體系建設(shè)管理基礎(chǔ)知識點(diǎn)歸納
- 社區(qū)鄰里關(guān)系管理基礎(chǔ)知識點(diǎn)歸納
- GB/T 45357-2025船用塑料管道系統(tǒng)聚乙烯(PE)管材及管件
- 內(nèi)分泌科工作總結(jié)
- 1.2 《“友邦驚詫”論》課件-中職高二語文(高教版2023拓展模塊上冊)
- 太陽能路燈采購安裝方案投標(biāo)文件(技術(shù)方案)
- 企業(yè)負(fù)責(zé)人安全生產(chǎn)培訓(xùn)
- 兒童照料對女性就業(yè)選擇的影響研究
- 電網(wǎng)工程設(shè)備材料信息參考價(2024年第四季度)
- 2025年氣體傳感器行業(yè)分析報告及未來五至十年行業(yè)發(fā)展報告
- 基于人工智能的職業(yè)教育教學(xué)策略研究
- 新疆工程勘察設(shè)計計費(fèi)導(dǎo)則(房屋建筑和市政基礎(chǔ)設(shè)施項(xiàng)目工程設(shè)計部分)
評論
0/150
提交評論