VSigner-《到》签到系统

前言

最近一直在做一个android的软件,算是重新开始学习android。上次做android的程序还是大三的时候android课上做了一个类似通讯录的东西,这次开始做的时候差不多都把android忘光光了。。。
这次应学院老师要求做一个签到系统,加上自己想重学android,正好练练手

需求

学期末老师找我,让我做一个签到系统,解决学校晚点名问题,我们学校每周末晚上6-7点都要进行晚点名,统计学生在校情况。这是一个费时费力不讨好的工作,想通过一个软件来解决,就是在线签到。有几点基本需求:

  1. 实名制
  2. 防止代签
  3. 定位签到(收集签到者的位置信息)

解决方案

  • 针对实名制,肯定需要使用者配合了,可以通过学校强制要求进行实名注册。
  • 防止代签的话我是直接绑定手机卡的IMSI(International Mobile Subscriber Identification Number:国际移动用户识别码),也就是说一个手机卡就是一个账号,该账号只能在插了对应手机卡的手机上登录。要代签的话只能把手机卡给代签的同学!
  • 定位是通过百度地图的API进行定位的,软件内不能自行修改地址,定位不成功无法签到

我想做到让所有用户都有权利发起签到,所以引入了“频道”的概念
主要的签到功能实现方法:

  1. 用户可以自行创建签到频道
  2. 用户可以搜索到所有用户创建的签到频道,可以订阅频道
  3. 用户可以开启自己频道的签到,也就是让别人可以发送位置信息到该频道上,订阅了该频道的用户就会收到签到提醒,点击签到提醒可以进行签到,签到完成后该频道的创建者就可以查看到该频道所有签到信息

    例:

    1. 老师A时常需要对计111班进行签到,他在VSigner上创建了一个频道叫《计111签到》。他让所有计111班的学生都订阅这个频道。
    2. 老师现在要签到了,他只要开启《计111签到》签到就行了,计111的所有学生都会收到签到消息。
    3. 学生B收到签到消息后点击签到,B的位置信息就会收集到服务器,他就签到完成了
    4. 老师A在《计111签到》频道里查看已签到用户信息就可以查看到学生B的签到信息,这样就完成了整个签到过程

实现效果

软件主页: 点我去VSigner主页

  • 启动页
  • 注册页
  • 签到通知
  • 自己频道
  • 订阅频道
  • 设置
  • 频道模糊搜索
  • 频道订阅
  • 签到
  • 频道信息

后语

这个项目还有很多可以优化的地方,可是最近没时间折腾了,只能做到这样了,暂时能用就行。我要赶紧做的的毕业设计项目了