APP下载

基于安卓指纹识别的考勤系统的设计与实现

2021-03-15杜建辉蔡朝朝江冰怡马文龙黄新迪胡雪萌

电脑知识与技术 2021年1期
关键词:指纹识别安卓

杜建辉 蔡朝朝 江冰怡 马文龙 黄新迪 胡雪萌

摘要:近年来学生课堂缺课频率日益增高,通过课前点名来保障课堂教学质量的措施也逐渐体现出了耗费时间、效率低下等弊端,针对这些问题,采用Android客户端与服务器端数据交互,设计并实现了基于安卓指纹识别的考勤系统,该系统利用指纹具有终身不变性和唯一性的特性,使用学生的指纹信息进行课堂考勤记录,保证了考勤记录的准确性。进行签到的同时也启用了手机的定位服务,将学生的位置信息存放在考勤记录表中,GPS与移动网络定位在很大程度上减小了定位误差,经过测试,该系统基本实现了所有功能,考勤记录清晰准确,为高校课堂考勤工作带来了极大便利。

关键词:安卓;指纹识别;考勤系统;数据交互;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 背景

指紋识别技术作为生物体特征识别技术之一在新世纪逐渐成熟[1],随着手机不断更新换代,手机的指纹识别功能已日益完善并成为手机不可或缺的功能,指纹识别技术是同虹膜识别、人脸识别等其他生物识别技术相比,目前最成熟且价格便宜,又非常适合应用于手机的生物特征识别技术[2],该技术也已广泛应用于日常生活生产中,所以手机指纹识别功能的前景也非常广阔。但根据调查,国内大部分Android手机的指纹认证功能都只局限于用来解锁手机,仅有个别软件将其应用于手机支付上,其他软件很少将指纹识别技术使用到App的功能逻辑当中,所以做一个基于安卓指纹识别的考勤系统不仅是一个新的尝试,更是一个挑战。

教学考勤对于大多数高校来说是每堂课开始前所必须完成的工作。由于学生人数众多,通常需要花费大量时间完成。考勤工作是一项烦琐又无聊的工作,时间久了必然会引起学生和老师对此工作的厌烦情绪。考勤的目的是让学生按时上课学习,但由于人工考勤的方式极易出现学生找人代签和漏点的情况,这时就需要一个考勤系统方便老师快速准确地掌握学生考勤情况。基于指纹识别的学生考勤管理系统正是利用准确、方便这一优势帮助老师快速准确地完成考勤工作,避免过于烦琐的工作过程,为老师和学生减轻负担。

2 系统设计

2.1 指纹识别技术

指纹识别技术中,最重要的部分就是指纹匹配,指纹匹配一般分成两个步骤,首先是通过指纹识别器获取用户指纹的特征,将输入的指纹信息和模板中的指纹信息进行比对,判断两幅指纹图像是否来自同一手指[3]。

光学指纹传感器的原理是,由于人的指纹凹凸不平,光照射在手指上,按照光的折射和反射原理,反射回光学指纹传感器的光线亮度会不同,最后会收集到不同指纹亮度的图片信息,这个时候就完成了指纹信息的采集。要进行识别时,通过光学指纹识别器获得用户指纹数据,并与指纹信息库进行对比,查看是否相同。光学识别只能作用于皮肤的表层,因此识别时需要保持手指干净和干燥。电容传感器也利用指纹凹凸不平的特性,当手指贴在传感器上时,凹点和凸点与传感器接触的距离有区别,所以电容数值也不同,通过这些数值就能成功识别出用户指纹。

现在的手机基本拥有电容式指纹识别或光学指纹识别功能,因此在指纹识别功能的开发过程中,可以直接调用Android系统的指纹识别API或Soter指纹授权,但Soter主要用于移动支付,为了保障用户信息安全,本系统决定采用Google官方的指纹识别接口,该接口通过指纹管理程序获得用户的Touch ID进行指纹验证。

2.2 GPS与移动网络定位技术

GPS是通过四颗卫星计算出卫星与接收机之间的距离与坐标,GPS定位分为单点定位和相对定位[4],手机目前都使用单点定位。移动网络定位是根据手机信号的强弱使用特定算法进行定位,考勤签到一般都处于室内,GPS信号较弱,对墙体的穿透能力不强,对定位精度会造成一定的影响,因此使用通过GPS与移动网络综合应用定位的A-GPS定位技术能使定位更精确。

2.3 功能设计

本系统使用手机自带的指纹识别功能,系统通过Fingerprint Manager实现与Fingerprint Service的通信来启动手机指纹识别功能,用户将指纹按在指纹识别区域内,即可完成考勤签到,用户指纹信息存储在本地,所以识别非常迅速。使用前需要确保手机内有一个指纹信息,不然系统的签到功能无法正常使用。

系统主要用户为学生和教师。教师登录系统后,发起课堂签到通知,学生收到信息后,可通过系统进行签到,在规定时间内未完成签到的同学,系统自动判别为旷课,学生迟到教师可将其旷课改为迟到,学生课堂考勤记录按教师每天所上课程分开保存,为方便查阅保障系统流畅性,一周之后的考勤记录不再为教师展示。学生在签到前需要开启手机的移动网络和定位服务,学生登录系统收到签到通知后,使用手机指纹识别功能完成教师发布的签到任务,学生的签到时间和地理位置信息将保存在数据库中,学生还可查询个人信息及一周内的考勤记录,一周之后的考勤记录不再为学生显示。所有用户的登录账户都为教师工号或学生学号,密码为身份证号后六位,打开系统后用户可自行更改登录密码。

2.4 数据库设计

数据库的设计对整个系统来说是一个非常重要的环节,规划的好在很大程度上能提高数据库的性能,增加数据库的稳定性。因此在开发过程中,为了便于数据管理减少冗余,将管理员、教师和学生放在了同一个表内,某些学生专业发生变动或上课时间发生更改,对这些数据可能存在变动的字段,单独取出成立新表,通过外键与其级联。本系统中的数据表有用户信息表、学院班级表、课程表和考勤表等,现主要展示用户表和学生考勤表。

用户表:用户的学号和工号不会发生变更,因此采用char类型,表中存放的为用户基本信息,通过role字段对用户角色区分,对不同角色授予不同的权限,表结构如表1所示。

考勤表:存放学生考勤信息,系统为学生和教师展示的考勤记录存放在该表中,其中主要包括考勤状态、考勤日期、位置信息和课程等字段,表结构如表2所示。

3 系统实现

项目的开发包括:登录界面、学生模块、教师模块、管理员模块等。

3.1 登录界面

当用户安装好指纹考勤系统App,打开系统将会进入角色选择主界面,考勤系统共包含了学生、教师、以及管理员三种用户角色,每一个角色的权限和操作界面都有所不同,所以在登录前用户需要选择自己的角色,输入正确的账户密码后,显示不同的操作界面,角色选择界面和用户登录界面整体采用线性布局,界面如图1,图2所示。

3.2 学生模块

当用户选择的角色为学生,点击开始使用会进入到登录界面,当学生输入自己的账号和密码点击登录按钮后,系统会通过学生的学号查询数据库内数据并判断学生输入的学号密码是否正确,如果正确将成功进入学生模块主界面。学生使用考勤App主要功能:考勤签到、查看签到记录、个人基本信息查询,以及登录密码的修改。在系统页面的底部使用了选项卡导航设计,用户点击底部的某个选项卡时,系统会切换到其对应的操作界面。当学生收到课堂考勤签到的通知,点击签到会出现指纹验证提示,指纹不匹配无法完成签到。指纹识别界面如图3所示。

3.3 教师模块

当用户角色选择老师,将会进入教师模块主界面,教师若是班主任,可对班级内学生的个人信息进行编辑,能查询晚上学生在宿考勤情况,确保学生安全在校。在系统页面内教师可通过自己的课程表发起相关课程签到通知,并设定考勤结束时间,系统会在手机的通知栏提醒学生及时完成考勤签到任务,在考勤结束后系统自动将学生考勤情况形成记录,课后教师可在课堂考勤记录中查询学生考勤情况,不同考勤状态的记录会用不同的颜色显示。考勤录如图5所示。

3.4 管理员模块

管理员并不参与课堂考勤与晚上在宿考勤的签到信息发布,主要功能为教师、学生信息的录入及教师信息的修改,对转班级或转专业同学的相关信息进行更正,对身份为班主任的教师给其管理本班学生信息的权限,管理员的主要功能是对服务器数据进行管理和维护。当用户忘记登录密码时,管理员可将该用户的密码重置为身份证号后六位。

4 总结

基于指纹识别的学生考勤管理系统在完成课堂签到功能的同时,对学生晚上在宿考勤情况也有很好的管理功能,只要有网络就能轻松完成考勤工作,不用安排人员对每层楼的宿舍进行检查,提高了在宿考勤检查工作的效率。该系统将考勤结果将保存在服务器内,方便后期查阅,实现了无纸化管理。但本系统还存在一些问题,比如,1)LocationManager定位功能不稳定,在低端机上定位信息不准确或不能获取;2)教师的学生考勤记录界面没有显示出班级所有人数和迟到旷到学生人数;3)以及学生的地理位置信息与教师不同,仍然可以进行签到,如果考勤记录中查看地理位置信息又增加了考勤工作负担,影响了整体效率。后期我们会对系统进行改进,将一些重要信息尽可能地展示在界面上,将指纹信息匹配但学生位置和教师位置不同的记录用不同颜色加以区分,或让其无法进行签到,并增加人脸识别功能使考勤方式多样化,更好的适配各种机型。

在系统开发过程中,我们遇到了很多技术上的问题,但通过对相关资料查询与导师的指导,我们最终还是克服了种种难关完成了这个系统,虽然系统并不完美,离我们预期设计还存在一些差距,但这同时也使我们认识到在系统开发过程中自己存在的不足,我们思考问题并不全面,在专业知识方面还存在欠缺,想要完善并丰富这个系统我们还有许多知识需要学习。以后不论是改进此系统还是设计其他新应用,我们都会积极探索,始终保持一颗进取之心。

参考文献:

[1] 于晓明.指纹识别应用研究[J].山东工业技术,2019(9):168.

[2] 邱士星.基于Android手机的指纹识别技术研究[D].西安:西安电子科技大学,2014.

[3] 马行运.指纹自动识别系统算法的研究与实现[D].南宁:广西大学,2008.

[4] 邬群勇,张爱国,许其凤,等.GPS移动定位与移动网络定位精度的分析[J].全球定位系统,2010,35(5):33-37,53.

[5] 徐崧胜.基于Android平台的学生签到系统设计和实现[J].电子技术与软件工程,2020(2):42-43.

[6] 郭宇航.安卓智能设备上的指纹识别方案[J].科学技术创新,2018(12):61-62.

[7] 代瑶.基于安卓技术的校园点名系统研究[J].数码世界,2018(3):154.

[8] 王国栋,韩立爽,孙洪亮.安卓系统手机指纹锁的安全性测试研究[J].河北公安警察职业学院学报,2018,18(2):19-22.

[9] 黄珂,黄方.基于安卓平台的行为指纹安全認证[J].实验科学与技术,2017,15(1):60-64.

[10] 刘江帅.腾讯生物认证平台TENCENT SOTER全面开源[J].计算机与网络,2017,43(16):32.

[11] 安迪.一种新的指纹保护用户凭据的口令认证方案[D].西安:西安电子科技大学,2017.

[12] 王谦.基于移动平台的指纹识别关键技术研究[D].哈尔滨:哈尔滨工程大学,2017.

【通联编辑:谢媛媛】

猜你喜欢

指纹识别安卓
文物表情包
基于单片机指纹识别电子寄存柜设计
指纹识别技术综述
一种基于安卓系统的手机侧抓包分析方法
基于大容量指纹识别的实时身份认证系统
基于线阵CCD的指纹识别实验
安卓L未至安卓M来了!安卓首泄漏M系统