1. 项目概述
本项目设计旨在开发一款门禁系统的安卓应用。该应用具有以下功能:
首次进入首页时,判断是否已设置门禁密码,若未设置,则跳转至设置门禁密码界面,进入界面用户不设置门禁密码将不可用首页功能,使用首页功能时会跳转至设置密码页面。
设置门禁密码界面会动态授权,若用户拒绝授权会弹出设置提醒,引导用户手动授权,设置密码需要输入两次一致的密码才能设置成功。
设置门禁密码后,进入添加用户人脸数据界面,可以选择本地图库中的人脸照片或拍照上传照片。添加完成后,重新加载添加人脸数据界面,根据用户需要继续添加人脸信息。
首页包含人脸开门、密码开门、管理人脸数据和修改门禁密码功能。
人脸开门功能会进入自定义人脸扫描界面,首先判断人脸是否为活体,若不是活体,则提示非人脸活体,请卸下面具。若为活体,则提取当前检测到的人脸与数据库进行对比,若相似度大于0.8,则弹出”开锁成功!欢迎回家!”的提示。若程序未开始执行,则提醒用户”识别结束,如未开门请联系管理员”。
密码开门功能会弹出窗口,用户需输入密码与数据库中的门禁密码进行对比,若一致,则开门,弹出”开锁成功!欢迎回家!”的提示;若不一致,则提示密码错误。
管理人脸数据功能会弹出提示,包括添加人脸数据和人脸数据列表。点击添加人脸数据列表可进入添加人脸界面,点击人脸数据列表可进入人脸数据列表界面,显示数据库中的人脸路径图片、名字、手机号和删除按钮。点击删除按钮可删除该行记录。
修改门禁密码功能会跳转至修改门禁密码界面,用户需输入原始密码和两次新密码,并检查原始密码和新密码是否合理。
2. 功能设计
2.1 首页
– 判断是否已设置门禁密码
– 若未设置,跳转至设置门禁密码界面
– 若已设置,显示首页功能按钮

2.2 设置门禁密码界面
– 用户设置门禁密码
– 动态获取授权






2.3 添加用户人脸数据界面
– 用户选择本地图库中的人脸照片或拍照上传照片
– 添加完成后,重新加载添加人脸数据界面




2.4 人脸开门功能
– 进入自定义人脸扫描界面
– 判断人脸是否为活体
– 若非活体,提示”非人脸活体,请卸下面具”
– 若为活体,提取当前检测到的人脸与数据库进行对比
– 若相似度大于0.8,弹出”开锁成功!欢迎回家!”的提示
– 若程序未开始执行,提示”识别结束,如未开门请联系管理员”


2.5 密码开门功能
– 弹出窗口,用户输入密码与数据库中的门禁密码进行对比
– 若一致,开门
– 若不一致,提示”密码错误”


2.6 管理人脸数据功能
– 弹出提示,包括添加人脸数据和人脸数据列表
– 点击添加人脸数据列表可进入添加人脸界面
– 点击人脸数据列表可进入人脸数据列表界面,显示数据库中的人脸路径图片、名字、手机号和删除按钮
– 点击删除按钮弹出‘确定’‘取消’提示,点击确定可删除该行记录





2.7 修改门禁密码功能
– 跳转至修改门禁密码界面
– 用户输入原始密码和两次新密码,并检查合理性


3. 技术实现
– 使用Android Studio进行开发
– 使用Java语言编写应用程序
– 使用Huawei HMS提供的人脸识别API进行人脸扫描
– 使用SQLite数据库存储用户的门禁密码和人脸数据
4. 开发计划
– 第一周:项目规划和需求分析
– 第二周:界面设计和数据库设计
– 第三周:功能开发和测试、优化和测试
5. 预期成果
– 完整的门禁系统安卓应用
– 用户可以通过人脸开门或密码开门的方式进入
– 用户可以管理人脸数据和修改门禁密码
apk安装包:点击下载
链接:https://pan.baidu.com/s/1HuH2DlT1TrsgbIf62DZJ8Q?pwd=uqlo
提取码:uqlo