基于手机图片的学生课堂考勤监控IOSAPP开发
2016-07-22汪俊超刘卓韦萍萍叶刚蔡海杰常雄
汪俊超+刘卓+韦萍萍+叶刚+蔡海杰+常雄+黄茂
摘要:该文分析了基于手机图片的学生课堂考勤监控的APP的主要功能,详细描述了基于手机图片的学生课堂考勤监控的APP的结构,根据需求分析实设计了数据库,最后对基于手机图片的学生课堂考勤监控进行了详细开发。应用程序采用Client/Server模式,基于IOS技术和Object-C语言,以SQLite 3作为后台数据库,Xcode4.3作为开发工具。
关键词:手机图片;课堂考勤;IOS
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)16-0131-02
1 背景
在学校,课堂是一个重要的地方,因为在这里,学生能学习知识、培养能力、增强素质,但是学校课堂的考勤一直是一个严重的问题,对课堂考勤的监控一直没有一个系统的管理方法,课堂考勤又是高校教学管理工作的重要组成部分,关系到学生的选课结业及评定成绩。针对学校教学的管理在课堂考勤工作中普遍存在的准确性和透明度缺乏等问题,基于手机图片的学生课堂考勤监控IOS APP是一个效果还不错的管理方式
一些高校也推出了各种课堂考勤的新方法及新技术,有各种各样的系统,有利用蓝牙技术实现课堂签到,有基于光学字符识别的移动考勤系统等点名方法。
基于手机图片的学生课堂考勤监控系统只需教师或班级管理人员用手机拍上课班级照片然后上传到服务器,然后再根据图片核对班级到勤情况,并把详细到勤情况汇总上传到服务器,教务处和辅导员就可以随时看到课堂的到勤情况,并附有图片证实。
移动互联网应用时代,教师能随时随地掌握学生的考勤统计信息及上课情况,实现了仅凭掌中手机就可以进行考勤的管理目标。
2 系统分析
2.1 需求分析
手机图片的学生课堂考勤系统可以智能的监控学生上课到勤情况,能够减轻教务处和教师对统计学生考勤工作的负担。系统特性有:
1)系统应具有良好的快速操作的界面,符合大众用户的使用习惯,同时便于推广。
2)系统要求手机拍照上传的图片要精准,保证拍到自己的完整头像。
3)能够方便地查看、统计学生信息,管理考勤图片信息,上报考勤信息。
2.2 功能模块
2.2.1 录入学生信息模块设计
该模块主要进行数据库操作及数据转换,班级管理人员将班级信息文件上传到服务器端即将学生信息和班级按照已设定好的字段插入到SQLite 3数据库。模块功能包括Excel数据导入、更新和删除学生班级信息,可快速对目标班级信息的查找和导入。
2.2.2 图片上传管理模块设计
上传功能将学生的图片上传到服务器。上传流程包括:第一,学生拍摄精确的图片之后上传。第二,在后台重新给图片生成一个唯一的识别码,然后把图片以字节流的形式写入相应的文件夹且把该文件名插入数据库中用户对应的行记录。第三,给用户一个反馈信息。
用户查看个人信息就会访问服务器端图片文件夹中与数据库中同名的图片。
2.2.3 考勤管理模块设计
考勤管理模块是课堂考勤系统的核心模块,在完成学生信息录入模块并导入班级信息表功能,学生上课前拍摄的图片上传到服务器后,也会一并将位置信息一起上传,后台会先获取位置信息,判断学生是否到达上课地点。然后获取头像与目标头像进行图片比对,相似度在百分之八十五以上,最后获取系统时间与该课程的上课时间比较来决定该学生的出勤情况,存入数据库,即可智能的查询目标班级的出去勤况。
2.2.4 数据库设计
该系统中主要是对数据库中表进行增删查改操作,并进行图片通过文件流的方式写入文件等操作,主要包含两方面的信息: 班级信息、学生信息、考情信息。
系统对数据表的操作分别以类的方式封装,实现时方便调用。基本表有:学生表、班级表、考勤表。
3 系统实现
3.1录入学生信息模块的实现
学生信息录入模块的实现是对Excel表中的数据转存到SQLite 3数据库,操作需导入JXL开发包。使用 ListView逐层显示所有数据。给ListView 添加单击事件调用其setOnItemCliekListener方法:将Excel文件中的学生信息转存入SQLite 3数据库。实现时需创建 Excel 文件的输入流,过程是先需要得到工作簿对象,再由工作簿对象得到工作表对象来获取行列数,调用的方法分别为Workbook.getWorkbook() 和 getSheet(),得到行列数后根据其行列数循环取出各行各列的值存入集合,将集合存入SQLite 3数据库,调用的方法分别为:sheet.getCell()和Cell.getContents()。在主界面显示已导入班级并添加”删除”按钮删除过期班级信息。此外,学生也可以自己注册账户,登录账户,然后自己录入信息。上述只是录入学生的基本信息,学生的图片信息需要自己拍摄录入。
3.2 图片上传管理模块的实现
该模块实现是用GridView控件添加图片并显示,点击图片还可以进行删除操作,用EditView控件来发布图片,主要通过相对布局实现,第一部分是底部的TextView,中间是EditView和GridView相对布局。
通过SimpleAdapter适配器实现实加载图片,在gridView.setOnItemClickListener()点击函数响应不同操作。 当点击加号图片时,调用本地相册通过Intent实现获取图片路径存于字符串pathImage。获取图片路径后在onResume中刷新图片,通过 GridView的setAdapter()和notifyDataSetChanged()函数刷新加载图片。点击图片时会获取其position,通 过dialog()函数弹出对话框提示是否删除,通过remove实现删除。
3.3 考勤管理模块的实现
考勤信息管理包含查 看、录入考勤信息、导出考勤表和短信预警。考勤信息查看由Button按钮、Spinner控件和 ListView组成。其中,Button 用于显示出勤和缺勤的学生信息,Spinner是显示班级信息,ListView显示查询结果。可调用 rawQuery()方法将结果存储到Cursor对象,最后循环存入集合。
录入考勤信息功能由EditText实现,通过getText()方法首先得到输入的值,然后调用数据库的插入方法 db.insert();插入到数据库中。
导出考勤表功能由Button按钮实现,为Button按钮添加单击事件,调用wordbook类的工厂方法创建工作薄对象; 建造Label对象,调用addCell()添加工作表对象,完成导出考勤表。
短信预警的实现先添加系统权限,
4 结束语
基于手机图片的学生课堂考勤监IOS APP是对学生考勤监控的应用软件,方便教师查询、记录考勤,没有了教师课上查勤过程,节省了课堂时间,且能减少教务处考勤统计的工作量,实现了方便快捷的学校课堂管理,通过智能的移动终端为人类的生活及工作提供了更好的服务。
参考文献:
[1] Mark D. Spring精通IOS开发[M]. 6版.北京: 人民邮电出版社, 2014.
[2] 唐巧. IOS开发进阶[M]. 北京: 电子工业出版社, 2014.
[3] 赫乐嘎斯, 康威. IOS编程[M]. 4版.武汉: 华中国科技大学出版社, 2015.
[4] 杨佩璐, 魏彩娟, 刘媛媛, 著. IOS开发范例实战宝典[M]. 北京: 清华大学出版社, 2015, 5.
[5] 考克斯, 琼斯, 舒姆斯基. IOS网络高级编程[M]. 北京: 清华大学出版社, 2014.
[6] 里克特, 基利. IOS组件与框架[M]. 北京: 人民邮电出版社, 2014.