杜建輝 蔡朝朝 江冰怡 馬文龍 黃新迪 胡雪萌
摘要:近年來學(xué)生課堂缺課頻率日益增高,通過課前點名來保障課堂教學(xué)質(zhì)量的措施也逐漸體現(xiàn)出了耗費時間、效率低下等弊端,針對這些問題,采用Android客戶端與服務(wù)器端數(shù)據(jù)交互,設(shè)計并實現(xiàn)了基于安卓指紋識別的考勤系統(tǒng),該系統(tǒng)利用指紋具有終身不變性和唯一性的特性,使用學(xué)生的指紋信息進行課堂考勤記錄,保證了考勤記錄的準確性。進行簽到的同時也啟用了手機的定位服務(wù),將學(xué)生的位置信息存放在考勤記錄表中,GPS與移動網(wǎng)絡(luò)定位在很大程度上減小了定位誤差,經(jīng)過測試,該系統(tǒng)基本實現(xiàn)了所有功能,考勤記錄清晰準確,為高校課堂考勤工作帶來了極大便利。
關(guān)鍵詞:安卓;指紋識別;考勤系統(tǒng);數(shù)據(jù)交互;GPS
中圖分類號:TP311.52? ? ? 文獻標識碼:A
文章編號:1009-3044(2021)01-0073-03
Abstract: In recent years, the frequency of students' absence in class is increasing day by day. The measures to ensure the quality of classroom teaching through roll call before class has gradually reflected the disadvantages of time-consuming and low efficiency. Aiming at these problems, this paper designs and implements an attendance system based on Android fingerprint identification by using data interaction between Android client and server. The system uses a fingerprint to have lifetime invariance and uniqueness Using students' fingerprint information to record class attendance, which ensures the accuracy of attendance records. At the same time, the mobile phone location service is also enabled for checking in, and the location information of students is stored in the attendance record form. GPS and mobile network positioning greatly reduce the positioning error. After testing, the system basically realizes all the functions, and the attendance record is clear and accurate, which brings great convenience for college class attendance work.
Key words: android; fingerprint identification; attendance system; data interaction; GPS
1 背景
指紋識別技術(shù)作為生物體特征識別技術(shù)之一在新世紀逐漸成熟[1],隨著手機不斷更新?lián)Q代,手機的指紋識別功能已日益完善并成為手機不可或缺的功能,指紋識別技術(shù)是同虹膜識別、人臉識別等其他生物識別技術(shù)相比,目前最成熟且價格便宜,又非常適合應(yīng)用于手機的生物特征識別技術(shù)[2],該技術(shù)也已廣泛應(yīng)用于日常生活生產(chǎn)中,所以手機指紋識別功能的前景也非常廣闊。但根據(jù)調(diào)查,國內(nèi)大部分Android手機的指紋認證功能都只局限于用來解鎖手機,僅有個別軟件將其應(yīng)用于手機支付上,其他軟件很少將指紋識別技術(shù)使用到App的功能邏輯當中,所以做一個基于安卓指紋識別的考勤系統(tǒng)不僅是一個新的嘗試,更是一個挑戰(zhàn)。
教學(xué)考勤對于大多數(shù)高校來說是每堂課開始前所必須完成的工作。由于學(xué)生人數(shù)眾多,通常需要花費大量時間完成。考勤工作是一項煩瑣又無聊的工作,時間久了必然會引起學(xué)生和老師對此工作的厭煩情緒。考勤的目的是讓學(xué)生按時上課學(xué)習(xí),但由于人工考勤的方式極易出現(xiàn)學(xué)生找人代簽和漏點的情況,這時就需要一個考勤系統(tǒng)方便老師快速準確地掌握學(xué)生考勤情況。基于指紋識別的學(xué)生考勤管理系統(tǒng)正是利用準確、方便這一優(yōu)勢幫助老師快速準確地完成考勤工作,避免過于煩瑣的工作過程,為老師和學(xué)生減輕負擔(dān)。
2 系統(tǒng)設(shè)計
2.1 指紋識別技術(shù)
指紋識別技術(shù)中,最重要的部分就是指紋匹配,指紋匹配一般分成兩個步驟,首先是通過指紋識別器獲取用戶指紋的特征,將輸入的指紋信息和模板中的指紋信息進行比對,判斷兩幅指紋圖像是否來自同一手指[3]。
光學(xué)指紋傳感器的原理是,由于人的指紋凹凸不平,光照射在手指上,按照光的折射和反射原理,反射回光學(xué)指紋傳感器的光線亮度會不同,最后會收集到不同指紋亮度的圖片信息,這個時候就完成了指紋信息的采集。要進行識別時,通過光學(xué)指紋識別器獲得用戶指紋數(shù)據(jù),并與指紋信息庫進行對比,查看是否相同。光學(xué)識別只能作用于皮膚的表層,因此識別時需要保持手指干凈和干燥。電容傳感器也利用指紋凹凸不平的特性,當手指貼在傳感器上時,凹點和凸點與傳感器接觸的距離有區(qū)別,所以電容數(shù)值也不同,通過這些數(shù)值就能成功識別出用戶指紋。
現(xiàn)在的手機基本擁有電容式指紋識別或光學(xué)指紋識別功能,因此在指紋識別功能的開發(fā)過程中,可以直接調(diào)用Android系統(tǒng)的指紋識別API或Soter指紋授權(quán),但Soter主要用于移動支付,為了保障用戶信息安全,本系統(tǒng)決定采用Google官方的指紋識別接口,該接口通過指紋管理程序獲得用戶的Touch ID進行指紋驗證。
2.2 GPS與移動網(wǎng)絡(luò)定位技術(shù)
GPS是通過四顆衛(wèi)星計算出衛(wèi)星與接收機之間的距離與坐標,GPS定位分為單點定位和相對定位[4],手機目前都使用單點定位。移動網(wǎng)絡(luò)定位是根據(jù)手機信號的強弱使用特定算法進行定位,考勤簽到一般都處于室內(nèi),GPS信號較弱,對墻體的穿透能力不強,對定位精度會造成一定的影響,因此使用通過GPS與移動網(wǎng)絡(luò)綜合應(yīng)用定位的A-GPS定位技術(shù)能使定位更精確。
2.3 功能設(shè)計
本系統(tǒng)使用手機自帶的指紋識別功能,系統(tǒng)通過Fingerprint Manager實現(xiàn)與Fingerprint Service的通信來啟動手機指紋識別功能,用戶將指紋按在指紋識別區(qū)域內(nèi),即可完成考勤簽到,用戶指紋信息存儲在本地,所以識別非常迅速。使用前需要確保手機內(nèi)有一個指紋信息,不然系統(tǒng)的簽到功能無法正常使用。
系統(tǒng)主要用戶為學(xué)生和教師。教師登錄系統(tǒng)后,發(fā)起課堂簽到通知,學(xué)生收到信息后,可通過系統(tǒng)進行簽到,在規(guī)定時間內(nèi)未完成簽到的同學(xué),系統(tǒng)自動判別為曠課,學(xué)生遲到教師可將其曠課改為遲到,學(xué)生課堂考勤記錄按教師每天所上課程分開保存,為方便查閱保障系統(tǒng)流暢性,一周之后的考勤記錄不再為教師展示。學(xué)生在簽到前需要開啟手機的移動網(wǎng)絡(luò)和定位服務(wù),學(xué)生登錄系統(tǒng)收到簽到通知后,使用手機指紋識別功能完成教師發(fā)布的簽到任務(wù),學(xué)生的簽到時間和地理位置信息將保存在數(shù)據(jù)庫中,學(xué)生還可查詢個人信息及一周內(nèi)的考勤記錄,一周之后的考勤記錄不再為學(xué)生顯示。所有用戶的登錄賬戶都為教師工號或?qū)W生學(xué)號,密碼為身份證號后六位,打開系統(tǒng)后用戶可自行更改登錄密碼。
2.4 數(shù)據(jù)庫設(shè)計
數(shù)據(jù)庫的設(shè)計對整個系統(tǒng)來說是一個非常重要的環(huán)節(jié),規(guī)劃的好在很大程度上能提高數(shù)據(jù)庫的性能,增加數(shù)據(jù)庫的穩(wěn)定性。因此在開發(fā)過程中,為了便于數(shù)據(jù)管理減少冗余,將管理員、教師和學(xué)生放在了同一個表內(nèi),某些學(xué)生專業(yè)發(fā)生變動或上課時間發(fā)生更改,對這些數(shù)據(jù)可能存在變動的字段,單獨取出成立新表,通過外鍵與其級聯(lián)。本系統(tǒng)中的數(shù)據(jù)表有用戶信息表、學(xué)院班級表、課程表和考勤表等,現(xiàn)主要展示用戶表和學(xué)生考勤表。
用戶表:用戶的學(xué)號和工號不會發(fā)生變更,因此采用char類型,表中存放的為用戶基本信息,通過role字段對用戶角色區(qū)分,對不同角色授予不同的權(quán)限,表結(jié)構(gòu)如表1所示。
考勤表:存放學(xué)生考勤信息,系統(tǒng)為學(xué)生和教師展示的考勤記錄存放在該表中,其中主要包括考勤狀態(tài)、考勤日期、位置信息和課程等字段,表結(jié)構(gòu)如表2所示。
3 系統(tǒng)實現(xiàn)
項目的開發(fā)包括:登錄界面、學(xué)生模塊、教師模塊、管理員模塊等。
3.1 登錄界面
當用戶安裝好指紋考勤系統(tǒng)App,打開系統(tǒng)將會進入角色選擇主界面,考勤系統(tǒng)共包含了學(xué)生、教師、以及管理員三種用戶角色,每一個角色的權(quán)限和操作界面都有所不同,所以在登錄前用戶需要選擇自己的角色,輸入正確的賬戶密碼后,顯示不同的操作界面,角色選擇界面和用戶登錄界面整體采用線性布局,界面如圖1,圖2所示。
3.2 學(xué)生模塊
當用戶選擇的角色為學(xué)生,點擊開始使用會進入到登錄界面,當學(xué)生輸入自己的賬號和密碼點擊登錄按鈕后,系統(tǒng)會通過學(xué)生的學(xué)號查詢數(shù)據(jù)庫內(nèi)數(shù)據(jù)并判斷學(xué)生輸入的學(xué)號密碼是否正確,如果正確將成功進入學(xué)生模塊主界面。學(xué)生使用考勤App主要功能:考勤簽到、查看簽到記錄、個人基本信息查詢,以及登錄密碼的修改。在系統(tǒng)頁面的底部使用了選項卡導(dǎo)航設(shè)計,用戶點擊底部的某個選項卡時,系統(tǒng)會切換到其對應(yīng)的操作界面。當學(xué)生收到課堂考勤簽到的通知,點擊簽到會出現(xiàn)指紋驗證提示,指紋不匹配無法完成簽到。指紋識別界面如圖3所示。
3.3 教師模塊
當用戶角色選擇老師,將會進入教師模塊主界面,教師若是班主任,可對班級內(nèi)學(xué)生的個人信息進行編輯,能查詢晚上學(xué)生在宿考勤情況,確保學(xué)生安全在校。在系統(tǒng)頁面內(nèi)教師可通過自己的課程表發(fā)起相關(guān)課程簽到通知,并設(shè)定考勤結(jié)束時間,系統(tǒng)會在手機的通知欄提醒學(xué)生及時完成考勤簽到任務(wù),在考勤結(jié)束后系統(tǒng)自動將學(xué)生考勤情況形成記錄,課后教師可在課堂考勤記錄中查詢學(xué)生考勤情況,不同考勤狀態(tài)的記錄會用不同的顏色顯示??记阡浫鐖D5所示。
3.4 管理員模塊
管理員并不參與課堂考勤與晚上在宿考勤的簽到信息發(fā)布,主要功能為教師、學(xué)生信息的錄入及教師信息的修改,對轉(zhuǎn)班級或轉(zhuǎn)專業(yè)同學(xué)的相關(guān)信息進行更正,對身份為班主任的教師給其管理本班學(xué)生信息的權(quán)限,管理員的主要功能是對服務(wù)器數(shù)據(jù)進行管理和維護。當用戶忘記登錄密碼時,管理員可將該用戶的密碼重置為身份證號后六位。
4 總結(jié)
基于指紋識別的學(xué)生考勤管理系統(tǒng)在完成課堂簽到功能的同時,對學(xué)生晚上在宿考勤情況也有很好的管理功能,只要有網(wǎng)絡(luò)就能輕松完成考勤工作,不用安排人員對每層樓的宿舍進行檢查,提高了在宿考勤檢查工作的效率。該系統(tǒng)將考勤結(jié)果將保存在服務(wù)器內(nèi),方便后期查閱,實現(xiàn)了無紙化管理。但本系統(tǒng)還存在一些問題,比如,1)LocationManager定位功能不穩(wěn)定,在低端機上定位信息不準確或不能獲取;2)教師的學(xué)生考勤記錄界面沒有顯示出班級所有人數(shù)和遲到曠到學(xué)生人數(shù);3)以及學(xué)生的地理位置信息與教師不同,仍然可以進行簽到,如果考勤記錄中查看地理位置信息又增加了考勤工作負擔(dān),影響了整體效率。后期我們會對系統(tǒng)進行改進,將一些重要信息盡可能地展示在界面上,將指紋信息匹配但學(xué)生位置和教師位置不同的記錄用不同顏色加以區(qū)分,或讓其無法進行簽到,并增加人臉識別功能使考勤方式多樣化,更好的適配各種機型。
在系統(tǒng)開發(fā)過程中,我們遇到了很多技術(shù)上的問題,但通過對相關(guān)資料查詢與導(dǎo)師的指導(dǎo),我們最終還是克服了種種難關(guān)完成了這個系統(tǒng),雖然系統(tǒng)并不完美,離我們預(yù)期設(shè)計還存在一些差距,但這同時也使我們認識到在系統(tǒng)開發(fā)過程中自己存在的不足,我們思考問題并不全面,在專業(yè)知識方面還存在欠缺,想要完善并豐富這個系統(tǒng)我們還有許多知識需要學(xué)習(xí)。以后不論是改進此系統(tǒng)還是設(shè)計其他新應(yīng)用,我們都會積極探索,始終保持一顆進取之心。
參考文獻:
[1] 于曉明.指紋識別應(yīng)用研究[J].山東工業(yè)技術(shù),2019(9):168.
[2] 邱士星.基于Android手機的指紋識別技術(shù)研究[D].西安:西安電子科技大學(xué),2014.
[3] 馬行運.指紋自動識別系統(tǒng)算法的研究與實現(xiàn)[D].南寧:廣西大學(xué),2008.
[4] 鄔群勇,張愛國,許其鳳,等.GPS移動定位與移動網(wǎng)絡(luò)定位精度的分析[J].全球定位系統(tǒng),2010,35(5):33-37,53.
[5] 徐崧勝.基于Android平臺的學(xué)生簽到系統(tǒng)設(shè)計和實現(xiàn)[J].電子技術(shù)與軟件工程,2020(2):42-43.
[6] 郭宇航.安卓智能設(shè)備上的指紋識別方案[J].科學(xué)技術(shù)創(chuàng)新,2018(12):61-62.
[7] 代瑤.基于安卓技術(shù)的校園點名系統(tǒng)研究[J].數(shù)碼世界,2018(3):154.
[8] 王國棟,韓立爽,孫洪亮.安卓系統(tǒng)手機指紋鎖的安全性測試研究[J].河北公安警察職業(yè)學(xué)院學(xué)報,2018,18(2):19-22.
[9] 黃珂,黃方.基于安卓平臺的行為指紋安全認證[J].實驗科學(xué)與技術(shù),2017,15(1):60-64.
[10] 劉江帥.騰訊生物認證平臺TENCENT SOTER全面開源[J].計算機與網(wǎng)絡(luò),2017,43(16):32.
[11] 安迪.一種新的指紋保護用戶憑據(jù)的口令認證方案[D].西安:西安電子科技大學(xué),2017.
[12] 王謙.基于移動平臺的指紋識別關(guān)鍵技術(shù)研究[D].哈爾濱:哈爾濱工程大學(xué),2017.
【通聯(lián)編輯:謝媛媛】