移动终端应用开发设计文档Word格式.docx
《移动终端应用开发设计文档Word格式.docx》由会员分享,可在线阅读,更多相关《移动终端应用开发设计文档Word格式.docx(11页珍藏版)》请在冰豆网上搜索。
翁新毅
2017年11月
1系统概述
●设计并实现一个“企业信息发布系统”。
具体要求如下:
⏹设计用于保存用户和企业信息的数据库表,需要存储的关键信息如下:
◆用户信息表(用户ID,用户名,密码)
◆企业信息表(信息ID,标题,内容,发布时间)
⏹系统能提供用户注册和登录功能。
当用户输入错误的用户名和密码时,能给出提示信息;
当用户输入正确的用户名和密码时,进入系统的主界面。
⏹系统主界面能以列表的形式显示当前已经发布的企业信息的标题。
当用户点击列表中的任一项时,可以查看此信息的详细信息。
⏹系统能以菜单的形式,提供信息的“发布”、“编辑”和“删除”功能。
2系统设计
●数据库设计
⏹用户信息表(用户ID,用户名,密码)tableUsers
数据项
数据类型
数据描述
备注
id
int
表示用户编号
随着插入,自增
name
text
表示用户名
唯一
password
表示密码
⏹企业信息表(信息ID,标题,内容,发布时间)tableMessages
表示信息编号
head
表示标题
body
表示内容
date
表示修改时间
●用户界面设计
⏹登录界面设计
◆详细描述
其中,当用户输入账号密码后,可以有两种功能进行选择。
登录时,将用户名和密码读出,并与数据库中数据进行比对,如果一致便可以跳转到登录界面。
如果不一致,提示用户名,密码错误请重新输入。
注册时,将用户名读出,和数据库中数据进行比对,如果数据库中已有该用户名提示用户已有该用户,注册失败,重新输入。
如果数据库中没有该用户名,就将这条用户信息插入数据库的用户信息表Users;
⏹系统主界面
◆系统主界面组件树设计
当TextView显示的为查看时,单击一个列表项,会在编辑页面显示该信息的所有信息。
当在菜单上单击发布时会跳入编辑页面
当在菜单上点击编辑,会使TextView变为”编辑”状态,然后单击下面的列表项,就进入了该信息的编辑页面。
当在菜单上点击删除,会使TextView变为“删除”状态,然后单击下面的列表项,就会删除对应的信息。
⏹
编辑页面
当处于查看状态时,对应的head和body都不能被修改,只能起到显示信息的作用
当处于编辑和发布的状态时,对应的head和body都能被修改,但对于data确实不可见的,因为时间的设定来源于系统。
当然处于编辑状态时,如果修改标题引起重名问题,活动会通过对话框来提示用户是否覆盖。
当处于发布状态时,如果标题在数据库已经存在,活动会通过对话框来提示用户是否覆盖。
3系统实现(完整源码请见光盘)
●应用程序目录和文件清单
目录和文件
⏹详细描述
◆MainActivity和activity_main是登录界面的活动
◆Main2Activity和activity_main2是主系统界面的活动
◆Main3Activity和activity_main3是编辑界面的活动,
◆SQLUsers是保存数据库文件,有数据库中表的创建内容
●系统功能的实现过程以及系统运行实际效果截图
登录注册功能的实现
当用户填入用户名和密码之后,点击登录按钮时,引发登录事件
log.setOnClickListener(newView.OnClickListener(){
@Override
publicvoidonClick(Viewv){…}}
打开数据库Users表,核对用户名和密码是否在表中,如果在就显示登录成功,进入系统主界面,如果不在,就显示登陆失败,已有该用户。
当用户填入用户名和密码之后,点击注册按钮时,引发注册事件
post.setOnClickListener(newView.OnClickListener(){
打开数据库Users表,核对用户名是否在表中,如果在就显示注册失败,如果不在,就显示注册成功,并将该用户插入数据库。
效果截图
如图显示了登录时从登录注册界面跳转到系统主界面。
由于提示信息的停留时间过短,未能捕捉到截图,在验收时给与演示。
⏹系统主界面功能的实现
发布功能,由下图所示,最开始并无信息,我们单击菜单选择发布,进入编辑界面,我们输入信息的具体内容,重复几次,回到系统主界面,效果如下图所示
删除功能,捕捉到点击的菜单事件,将TextView改为删除状态,然后当点击下面的列表项会引发下图所示的事件,删除对应的项
效果如下图所示,可以看出删除d表项
查看功能,当处于查看状态时,点击a列表项,会进入编辑界面,此时的编辑界面并没有编辑功能,如下图所示
编辑功能,捕捉到点击的菜单事件,将TextView改为编辑状态,然后当点击下面的列表项会引发下图所示的事件,编辑对应的项
4开发难点与体会
在开发的过程中,首先我觉得比较难的在于应用的设计,设计几个活动,每个活动的界面是怎么样的,活动之间的相互调用关系,活动间数据的传输,活动与数据库之间链接,以及在活动中对数据库的增删改查操作。
在设计阶段,这些都需要考虑到,而且还要根据系统的描述,了解到详细的需求分析。
这些内容,看似很容易,很好理解,但是如果这些设计工作做不好会导致整个应用可能会崩溃,应用会有逻辑上的错误,导致应用的返工重做。
另一个难点在于主界面功能的实现,对于查看,发布,编辑,修改,每一种功能都需要写出不同的逻辑操作。
比如查看,发布,编辑就需要跳入编辑活动,根据选择的不同的功能,在编辑页面显示出不同的效果。
这个时候,就需要在两个活动中传递数据,来判断这个编辑活动处于哪种功能状态下。
在这次实验中,我的体会是看似简单的应用开发,也依靠自己知识的积累和技能的熟练程度。
这次实验,花了自己不少的时间,虽然简单也使自己收获了很多,因为以前的实验都是单个活动而且逻辑结构也很清楚简单,这次的话就有多个活动,多个活动的相互调用以及信息传递的确也困扰过我。
还有,对于dialog的操作还是不够熟练,为此也花了不少时间进行调试。
在写代码的时候一定要注意小细节,比如name.getText和数据库比较的时候由于没有ToString()操作所以比较的时候得不到正确的结果。
总之,在以后的学习过程中我一定再接再厉,努力掌握移动终端开发知识。
成绩评定表
班级:
姓名:
学号:
序号
评分项目
满分
实得分
1
学习态度认真、遵守纪律
10
2
设计方案正确性、可行性、创造性
20
3
软件功能完善、界面美观、运行正确
40
4
代码规范、注释清晰、可读性好
5
报告规范、文理通顺、描述清晰
6
系统演示汇报情况良好、回答问题正确
总得分
评语:
教师签名:
年 月 日