android同学录系统.doc_第1页
android同学录系统.doc_第2页
android同学录系统.doc_第3页
android同学录系统.doc_第4页
android同学录系统.doc_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

湖南工业职业技术学院项 目 设 计项目名称 同学录系统 系(院)名称 湖南工业技术学院 专业及班级 移动应用开发S14-2 学生姓名 李启煌 学 号 06 指导教师 李俊成 完成日期 2016 年 5月 15 日目录摘 要3一、项目任务概述41、项目背景42、项目任务43、项目要求44、实训目的5二、系统需求分析61、需求分析62、系统设计63、设计要求74、异常分析7三、系统功能描述81、系统主要功能82、系统功能图8系统功能9四、功能设计101、主界面102、头像设置123、编辑界面13五、程序模块设计14一、数据库14二、客户端15三、服务端16六、流程设计171、客户端基本流程172、服务端基本流程18参考资源19 摘 要随着手机技术不断提高,而联系方式也变得多种多样,作为初中高中保存联系最普遍的方式,同学录也由纸质的精美画册的同学录变成现在的电子的app式的同学录。学生录主要是用来让同学们能在上面相互联络,能够共同想起彼此之间的友谊,还能够想起大学时代的生活。我们制作的同学录通过eclipse+ADT还有javaweb进行研究和开发的,制作的目的主要是用来能够进行保存的联系方式和校友照片的上传,还能实现数据的上传与下载。总而言之,我们制作的同学录系统有三个目的,一个检验自己在以前的基础知识是否牢固,二是对明年的毕业设计的演练,三是为了能让同学们能够更加容易联系,从而更加加深了同学间的友谊。在这次制作中能使我们充分利用Android和SQLite数据库还有javaweb,也使我们对java语言和Android技术和SQLite数据库掌握的更深,更透彻。一、项目任务概述1、项目背景随着4G时代的到来,移动互联网成为Internet下一个热点,人与人之间的交流也也越来越来方便。因而同学之间的同学通讯录由原来初中高中的文本到现在的手机app客服端,和电脑服务端。终端变得越来越小,功能越来越强,可移植性增强了许多,服务器的功能也越加强大,Android 可以达到用户体验前所移动互联改变生活方式。 那么基于Android移动设备端保存信息需求越来越多,同学通讯录就是其中最常用的应用之一。同学录通讯系统给人们生活带来方便快捷的同学信息,在同学以后日常生活中不会到处寻找同学的信息。同学通讯录系统界面明了,操作简单,适合所有年龄阶段的运用,对于保存和查看的同学的信息有一定的帮助。2、项目任务(1)能保存同学基本信息。(2)支持拍照设置头像功能。(3)支持同学信息上传保存到服务器。(4)并且能够同一个班级的同学通过登录,可以访问同学录,并下载数据。(5)(需要移动端+服务端)。3、项目要求所开发出的项目可通过上机检查,然后在规定的时间内完成项目。在课程设计中,需撰写相关技术的文档,并在必要时,附上相应的屏幕截图。最后提交详细的课程设计报告。4、实训目的通过对界面的布局和控件使用等相关知识的学习和应用,我对Android平台下的开发工作有了一个初步的了解,并且经过这次的开发,它使我能够基本掌握这些重要内容。软件开发以后,把同学的信息输入到客服端,然后保存到数据库,通过文件的上传与下载的功能上传到服务端上面去,同学们能够通过登陆到服务端上看到自己和别人的信息,并下载信息。这也是更好的我们之间的交流。我们制作的同学录系统有三个目的,一个检验自己在以前的基础知识是否牢固,二是对明年的毕业设计的演练,三是为了能让同学们能够更加容易联系,从而更加加深了同学间的友谊。二、系统需求分析1、需求分析本软件是一个App 应用程序,启动程序后可以进行对同学的信息的输入,把同学的保存到SQLite数据库。用手机拍照功能拍下同学的照片设置软件同学页的头像,把同学所有的信息上传到服务器中,并可以下载。从上面的描述中可以基本了解软件的功能需求: (1)能保存同学基本信息。(2)支持拍照设置头像功能。(3)支持同学信息上传保存到服务器。(4)并且能够同一个班级的同学通过登录,可以访问同学录,并下载数据。(5)(需要移动端+服务端)。2、系统设计用户在使用这款软件是希望它的快捷方便,所以我们把这款软件的主界面定在了手机桌面上。首先客服端的功能,进入界面的是一个ListLayout,底下有有两个按钮,添加同学信息,退出系统。点击添加同学信息,跳转到第二个页面上了,第二个视图是表格布局(TableLayout),底下有有两个按钮,一个确定按钮,另一个是取消按钮。第二个页面其功能提供用户信息的输入,当用户输入完信息后按确定到第一个页面,第一个页面以列表形式显示第二个页面输入的姓名和电话号码。当用户点击姓名和号码时,就跳到第三个页面了,第三个显示了点击的用户的所有信息。底下有四个按钮,返回列表,修改同学信息,发送短信,拨打电话。然后服务端,应用javaweb和servlet技术和文件上传技术,把数据库的同学信息上传到服务端。用户通过登陆看到自己和所有人的信息,并是否选择下载。先把界面构思好,界面尽量简洁,方便使用,布局的充分考虑,尽量让界面最优化,界面必须要于实训要求符合,实现功能,建立数据库,连接数据库。然后完成服务端的功能。3、设计要求(1)每个人都要单独完成,需要提交的东西有:项目代码,项目实训文档电子档以及纸质打印。(2)每个项目的创建必须有严格的格式:项目名称+自己名字首字母缩写+学号+日期(3)实训文档的格式严格按照毕业设计的文档格式进行。4、异常分析当应用程序中的界面没有正常显示同学的信息,出现程序错误时或程序出现闪退的情况,视为程序异常。 经过分析,应用程序在连接数据库和解析数据时,容易出现异常,所以在设计的时候应仔细分析原因,并且认真对待,在出现异常的地方给出具体解决方案,使用户享受到更友好的体验。三、系统功能描述1、系统主要功能本软件要完成在Android手机上实现天气的即时查询。所涉及的功能有: (1)能保存同学基本信息。(2)支持拍照设置头像功能。(3)支持同学信息上传保存到服务器。(4)并且能够同学通过登录可以访问同学录,并下载数据。(移动端+服务端)。2、系统功能图图3.1 系统功能图进入界面的是主界面,底下有有两个按钮,添加同学信息,退出系统。点击添加同学信息,跳转到第二个页面上了,第二个视图是表格布局,底下有有两个按钮,一个确定按钮,另一个是取消按钮。第二个页面其功能提供用户信息的输入,当用户输入完信息后按确定到第一个页面,第一个页面以列表形式显示第二个页面输入的姓名和电话号码。当用户点击姓名和号码时,就跳到第三个页面了,第三个显示了点击的用户的所有信息。底下有四个按钮,返回列表,修改同学信息,发送短信,拨打电话。系统功能手机同学录 联系人管理联系人业务联系人分组联系人展示移动联系人编辑联系人删除联系打电话发短信删除分组修改分组添加分组 图2.1 系统结构图图2.1 是本同学录中客户端的系统功能图,他其中综合实现了同学作为联系人的作用,实现联系人展示,联系人的分组,联系人的管理,联系人的综合业务。其中他涵盖了多种功能,可以进行添加分组,修改分组,对分组中的联系人进行删除和编辑,以及移动等功能,这其中的增加,删除,修改,查看联系人全部应用了Android的sqlite数据库增删改查,这是Android的基础核心课程,也是重点和难点。四、功能设计1、主界面图 4.1 主界面图图4.1是本系统中的客户端的主界面图,这是四个布局嵌套而成的,分别是childlayout.xml和grouplayout.xml和popup-windowlayout.xml和topbar.xml。childlayout.xml是移软一班下面增加同学的目录,grouplayout.xml是容器视图,应用以数组和列表还有数据库,总的列表,可以进行修改列表,删除列表,重命名列表,对列表中的同学信息进行移动。popup-windowlayout.xml中有三个按钮,其中第一个跳转到手机发送短信页面,第二个按钮是跳转到手机的蓝牙功能的页面,第三个页面是跳转到手机中拨打电话的页面。topbar.xml是顶部的输入框和和小人头像,其中输入框是输入同学用户信息进行搜索详细信息,而小人头像可以对用户头像进行设置,他可以使用本地的头像,和拍照的头像。图 4.2 编辑主页图图4.2为编辑页面图,采用toast来显示提示信息框,其中有三项内容,删除联系人,编辑联系人,移动同学信息。2、头像设置图 4.3头像设置信息图图 4.3是头像设置信息的图,采用toast来显示提示信息框,使用toasttoast有两点好处,toast提示信息不会获得焦点,软后toast提示信息过一段时间会自动消失。上图中进行头像设置,他可以使用本地的图片,也可以用拍照的图片进行修改,而成为头像,本程序采用控制摄像头拍照,android的Camera涉及许多api,当用户按下拍照是,该应用会自动对焦,对焦成功拍下照片,该程序提供了一个自定义的TextureView来显示预览取景。由于该手机程序需要使用摄像头,因此还需要在androidmainifest.xml文件中增加授予该程序使用摄像头的权限。3、编辑界面图 4.4编辑同学信息图图4.4是本程序中编辑同学信息的界面,他是程序中的editcontact.xml,其中有四个文本输入框,两个文本选择框,文本选择框中所属组选择的是主界面的列表,而生日是采用了日期时间选择器(datepickerTimepicker)进行ondatechangelistenter进行监听。两个按钮,右上角为同学头像设置。本页面采用垂直方向的线性布局。主页面中编辑同学信息按钮,从左到右,依次发送短信,蓝牙连接,拨打电话号码,其中这三项都涉及安卓的发送短信、连接蓝牙,拨打电话号码的权限,都需要在安卓中的androidmainifest.xml文件中增加授予该程序相应权限。五、程序模块设计一、数据库(1) SQLite数据库是一个轻量级的数据库, 适用于少量数据的CURD;SQLite数据库支持大部分SQL语法, 允许使用SQL语句操作数据库, 其本质是一个文件, 不需要安装启动;SQLite数据库打开只是打开了一个文件的读写流, 如果有大数据量读写, 需要高并发存储, 那么就不应该使用SQLite;表的设计是这次设计的一个核心内容。根据前面对网站前台与后台功能模块的分析和对数据库中实体关系的设计,可以看到网站中所用到的数据信息基本包括:商品信息、用户信息、留言信息、订单信息、超级链接信息、管理员信息、公告信息等。下面是为数据库设计的表:表5.1是本程序中的用户信息表,他将用户输入的信息保存到SQLite数据库中。表5.1 用户信息表的结构字段名称数据类型长度是否允许为空主键字段描述_idNUMBER10否是编号name BIGINT20否否姓名phone BIGINT20否否电话号码addreeVARCHAR100否否地址qq BIGINT12否否QQ号码brhithdayNUMBER10否否生日emai NUMBER10否否电子邮件personstateVARCHAR100是否个人说明表5.1是用户客户端存入输入信息的表格,总共有编号,姓名,电话号码、地址、qq号码、生日、电子邮箱、个人说明这几项。其中id是编号,是自增长的,主键不允许为空。在本程序中是采用在第一个Activity主程序中,定义了编号,姓名,电话号码、地址、qq号码、生日、电子邮箱、个人说明这几项选项,并运用Intent及Bundle对象,获取用户输入的值时,同时将数据传入。在Activity1是以Bundle封装对象,自然在Activity2亦是以Bundle的方式解开封装的数据;程序中以getIntent().getExtras() 方法取得随着Bundle对象传递过来的所有参数,显示在屏幕上。表5.2是本程序中的服务端中的用户登录,其功能实现服务端登陆注册,验证。字段名称数据类型长度是否为空主键字段描述_idNUMBER10否是编号name BIGINT20否否用户名password PASSWORD10否否密码表5.2 同学登陆表表5.2之中,一共有三项内容,一个编号,一个用户名,另外一个是密码,其中_id是主键,三个全部不允许为空。二、客户端上文中已经详细介绍服务端,这里不在细说,重点了解服务端。三、服务端图 5.3 服务端登录页面图5.3是服务端登录页面,他有两个输入框,账号和密码,对应上文数据库的同学登陆表。六、流程设计1、客户端基本流程系统基本流程是描述整个系统的使用逻辑,通过基本流程的描述,开发人员应能快速掌握整个系统的逻辑。 开始结束进入系统进入主界面插入信息保存信息对用户信息作操作拨打电话编辑信息发送短信蓝牙连接把用户信息上传到服务器图6.1 系统流程图 图6.1是本程序客户端中的系统流程图,系统流程图是使非专业人员能够清楚了解程序详细流程工作助手,也是能够使专业人员更加清楚阅读其他人所写的代码。从而提高效率。首先进入系统的主界面,可以对同学进行分组,对分组可以进行添加,重命名,删除等操作。点击分组,对分组扩展,编辑信息,编辑完成后,对数据上传到服务器。2、服务端基本流程开始结束进入系统进入主界面登陆账户查看个人信息查看所有信息用户信息下载本地图 6.2 服务端流程图图 6.2为本程序中的服务端的流程图,服务端是本程序的重要组成部分,他能够对存储在手机里同学录进行上传,并且下载的业务,把上传的同学录信息下载到本地中去。服务端的流程和客户端的流程相差不是很

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论