1 项目基本信息
1.1 项目名称
垃圾分类助手APP的设计与实现
1.2 开发运行环境
开发语言:Java
开发工具:Android Studio
模拟器:雷电模拟器9
数据库:SQLite
1.3 使用的核心类及组件
Activity:作为实现界面的窗体类
Base Adapter:适配器类
Sq lite Open Helper:数据库类
Intent:页面跳转传值
Fragment:文档碎片
View Pager:滑动页面,页面切换组件
Alert Dialog.Builder:对话框
Option菜单
Animation Draw able:关键帧动画
Media Player:视频播放
Shared Preferences:数据存储
Toast:消息提示框
Cursor:游标
Content Values:数据存储类似map
Count Down Timer:倒计时
Spinner:下拉菜单
2 项目需求分析
2.1 APP前台部分
(1)用户管理:新用户可以通过注册登录该系统,已经注册的用户可通过登录界面登录系统,可以完善个人信息,可以修改密码,可以退出系统。
(2)垃圾模块:用户可通过垃圾名查询相应分类信息或通过分类名查询有什么垃圾。
(3)新闻模块:用户可以浏览新闻。
2.2 APP后台部分
(1)管理员模块:管理员主要有管理员登录、用户信息管理功能。
(2)垃圾分类模块:管理员可以对垃圾分类信息进行增删改查。
(3)垃圾模块:管理员可以对垃圾信息进行增删改查。
(4)新闻模块:管理员可以对新闻信息进行增删改查。
3 项目开发过程
3.1 APP功能模块
根据不同的用户,系统主要分为前台普通用户和后台管理员。
前台的主要功能是用户管理包括用户注册、登录、退出、修改密码、完善个人信息;垃圾模块包括查询垃圾分类名、查询垃圾名;新闻模块主要功能是浏览新闻。
后台管理员部分主要功能是用户管理包括前台用户信息的查看与删除、对后台管理员的信息管理;垃圾分类管理包括添加、修改、删除垃圾分类;垃圾管理包括添加、修改、删除垃圾;新闻管理包括添加、修改、删除新闻。
3.2 数据库设计
本APP在设计数据库时需要4张表来实现,主要包括用户表user、垃圾表rubbish、垃圾分类表category、新闻表news。
表3-1 用户表
字段 | 数据类型 | 主键 | 外键 | 是否为空 | 说明 |
uid | Integer | 是 | 否 | 否 | 用户id |
username | varchar(32) | 否 | 否 | 否 | 用户名 |
password | varchar(64) | 否 | 否 | 否 | 密码 |
telephone | varchar(11) | 否 | 否 | 是 | 电话 |
sex | varchar(2) | 否 | 否 | 否 | 性别 |
Image_user | varchar(300) | 否 | 否 | 是 | 头像 |
state | tinyint(1) | 否 | 否 | 否 | 身份:0管理员 1普通用户 |
表3-2 垃圾表
字段 | 数据类型 | 主键 | 外键 | 是否为空 | 说明 |
rid | Integer | 是 | 否 | 否 | 垃圾id |
rname | varchar(100) | 否 | 否 | 否 | 垃圾名称 |
cid | Int | 否 | 是 | 否 | 分类id |
表3-3 垃圾分类表
字段 | 数据类型 | 主键 | 外键 | 是否为空 | 说明 |
cid | Integer | 是 | 否 | 否 | 分类id |
cname | varchar(100) | 否 | 否 | 否 | 垃圾分类名 |
Image_cat | Varchar(300) | 否 | 否 | 否 | 类别图片 |
description | Varchar(400) | 否 | 否 | 否 | 描述信息 |
表3-2 新闻表
字段 | 数据类型 | 主键 | 外键 | 是否为空 | 说明 |
nid | int | 是 | 否 | 否 | 新闻id |
Image_news | varchar(300) | 否 | 否 | 否 | 图片 |
Title | Varchar(50) | 否 | 否 | 否 | 新闻标题 |
content | varchar(500) | 否 | 否 | 否 | 新闻内容 |
createtime | datetime | 否 | 否 | 否 | 新闻时间 |
3.3具体实现
3.3.1 管理员登录
管理员想要进行管理操作需要先登录,打开app后会有一段5s的广告,点击跳过可进入登录页面(背景为一段视频),输入用户名密码,即可登录,可以勾选记住密码,以便下次登录不需要再输用户名密码。如图3-3-1登录界面所示。
图3-3-1登录界面
3.3.2查看个人信息
管理员身份验证通过后,会进入主界面。点击头像即可查看个人信息。如图3-3-2主页面及个人信息页面所示。
图3-3-2主页面及个人信息页面
3.3.3修改个人信息
管理员在查看个人信息页面可以编辑头像(点击头像会跳转到相册,选择照片即可)、用户名、性别、电话,编辑完成后点击保存个人信息即可修改个人信息。如图3-3-3修改个人信息页面所示。
图3-3-3修改个人信息页面
3.3.4修改密码
管理员在查看个人信息页面单击修改密码,会弹出一个对话框,输入相应信息点击确认修改即可修改密码。如图3-3-4修改密码界面所示。
图3-3-4修改密码界面
3.3.5用户管理
管理员在主页面点击管理用户,即可进入用户管理界面,对用户信息进行增、删、改、查操作。如图3-3-5用户管理界面所示。
图3-3-5用户管理界面
3.3.6垃圾分类管理
管理员在主页面点击管理垃圾分类,即可进入垃圾分类管理界面,对垃圾分类信息进行增、删、改、查操作。如图3-3-6垃圾分类管理界面所示。
图3-3-6垃圾分类管理界面
3.3.7垃圾管理
管理员在主页面点击管理垃圾,即可进入垃圾管理界面,对垃圾信息进行增、删、改、查操作。如图3-3-7垃圾管理界面所示。
图3-3-7垃圾管理界面
3.3.8管理员退出
管理员退出时点击主页面菜单中的退出即可。如图3-3-8管理员退出所示。
图3-3-8管理员退出
3.3.9用户注册
用户注册是进入APP主页的第一步,用户如果想要使用垃圾分类助手,必须进行注册,点击登录页面下方的新用户注册即可跳转到注册页面,注册时需要输入的信息如图3-3-9用户注册页面所示,之后点击注册即可。
图3-3-9用户注册页面
3.3.9用户登录
新用户注册成功以后点击已有账户去登录按钮,即可跳转到登录页面,输入用户名密码即可登录,可以勾选记住密码,以便下次登录不需要再输用户名密码。如图3-3-9登录界面所示。
图3-3-9登录界面
3.3.10查看、修改个人信息
用户登录成功后进入app,可点击导航个人中心或向右滑动至个人中心,点击头像可查看详细信息,可修改密码、完善个人信息。如图3.3.10用户个人信息管理所示。
图3.3.10用户个人信息管理
3.3.11垃圾模块
用户在app内,可点击导航功能页或向右滑动至功能页,选择分类类别,点击查询,即可查到该分类下的所有垃圾名;也可以点击菜单中的查询分类,在弹出的对话框输入垃圾名,即可查到该垃圾的所属分类。如图3-3-11垃圾模块功能所示。
图3-3-11垃圾模块功能
3.3.12新闻模块
用户在app内,可点击导航新闻资讯页或向左滑动至该页,可向下滑动浏览新闻。如图3-3-12新闻模块所示。
图3-3-12新闻模块