1、 本科生毕业论文基于 Android 的同城交易系统的设计与实现The Design and Implementation of Trade Between Cities Based on Android 所在院(系):信息工程学院学生姓名: 指导老师: 研究起止日期:二XX 年十月至二XX 年十月【摘要】自第一款智能手机 Simon 的诞生,人类的生活中已经离不开智能手机。而在智能手机背后多种强大的操作系统中,Android 无疑是发展最快的操作系统,在用户不断提升的生活品质的背景中,基于 Android 系统的 App 也越来越多,因此,通过 App 完成一些个人需求已经成为潮流。基于这样
2、的背景,本次设计就围绕百姓日常需求开发了一款同城交易 App,在这款App 中用户可以将需求发布出去,也可以搜寻自己想要的东西在线交易,通过这样一个交易平台可以免去日常的四处奔波,简化传统的交易过程,提高了交易效率。在本文中读者可以详细了解到此款 App 的开发过程。【关键词】 Android; 同城交易; 开发技术; 系统功能【Abstract】When Simon, the first smart phone, came into the world, smart phone is closely bound up with our life. In smart phone, there
3、are a variety of powerful operating systems. Android is undoubtedly one of the fastest growing operating system. The quality of life is getting better, at the same time; the more Apps (application) are developed. So, complete some of the personal needs have become the trend through Apps.With the bac
4、kground, the design is a local transaction APP that based on peoples daily life. People can use the APP to release their demands out and seek for things that they need. It is online trading. The trading platform will bring us convenience and simplify the traditional trading progress, also can enhanc
5、e the efficiency. In the writings, readers can acquaintance the development process of this App detailed.【Key words】Android; trade between cities; development technology; system function目录1 引言 .11.1 Android 简介 .11.2 开发背景 .11.3 现状分析 .21.4 开发意义 .22 系统开发工具及开发技术 .42.1 开发工具及平台 .42.1.1 Eclipse.42.1.2 SQLy
6、og.42.1.3 SharpDevelop.42.2 开发技术 .42.2.1 MVC 框架 .42.2.2 Activity 生命周期 .52.2.3 Android 的四大组件 .73 系统需求分析 .83.1 系统及需求分析 .83.1.1 系统功能分析 .83.1.2 系统性能分析 .83.2 系统可行性研究 .93.2.1 技术可行性 .93.2.2 经济可行性 .93.2.3 操作可行性 .93.3 系统流程图 .104 系统总体分析 .114.1 系统功能设计 .114.2 数据库设计 .124.2.1 数据库概念设计 .124.2.2 系统实体图 .124.2.3 数据字典
7、.145 系统详细设计 .165.1 登录模块的设计与实现 .165.1.1 注册功能的实现 .165.1.2 登录功能的实现 .195.1.3 密码找回与修改的功能实现 .195.2 系统列表获取模块的设计与实现 .195.3 详细信息中打电话发短信功能的设计与实现 .215.3.1 打电话功能的实现 .225.3.2 发短信功能的实现 .225.4 消息发布模块的设计与实现 .235.5 个人中心模块的设计与实现 .256 系统测试 .276.1 软件测试原则和技术 .276.2 测试用例设计 .277 总结 .29参考文献 .30致谢 .3111 引言时代变迁,人类的生活方式越来越智能,
8、这也促使了智能手机这一领域的迅猛发展,如今,手机已经超越了电脑电视在人们心中的地位。2007 年谷歌发布 Android 操作系统之后使智能手机越来越受欢迎,基于 Android 平台的 App 越来越多,它们正在慢慢地融入到人们的生活中。通过这些 App,人们可以网上购物,在线导航,在线阅读,好友互动等。1.1 Android 简介Android 是一种基于 Linux 系统的移动技术平台。Android 系统的特点是自由且开放源代码,所以对于蜂窝技术和移动计算机来说,Android 系统给它们提供了 Linux 操作系统的能力和可移植性,以及标准高级语言和 API 的可靠性和可移植性,外界
9、评论说 Android是“开放源码的革命” ,是革命的一部分 1。Android 最早是由 Andy Rubin 开发出来,后来被谷歌收购,再由谷歌在 2007 年与多个制造商共同发布,随着安卓版本的不断更新,它的市场份额也越来越高,世界采用这一系统的移动设备已达到数十亿台。1.2 开发背景很多年前的手机除了打电话发短信几乎没有什么新功能,手机上能有计算器,电子书,音乐播放器这类东西已经很稀奇了。如今,Android 系统的已被各行业广泛使用,智能手机的 App 使用率也达到了空前的高度,人们的生活也逐步电子化,现在学者不用背着各种书面资料,我们有电子书;出门在外不用再担心找不到路,我们有掌上
10、地图;购买物品不用再特地跑去市场,我们可以网上购物这种生活方式给人们的生活带来了极大的方便,人们也越来越以来这种方式。在未来,我们的生活只会越来越智能。根据人们当下对生活的所需我开发了这一款同城交易 App。首先,现在外出打工的年轻人很多,他们需要租房子住,然而想找到一个自己心仪的住处并不容易,这款 App 就为这类人群提供了方便,随时随地看房,无需到处奔波。其次,有很多想要找工作的人找不到工作时会选择中介所为自己推荐工作,然而在找到工作后会想自己索要不低的中介费用,同样在这款 App 中这类人群可以找到适合自己的岗位,方便快捷。另外,还可以为人们提供二手物品,宠物,家政服务,买房买车等一系列
11、的服务,从人力物力的节省角度来讲还是一款很有价值的交易软件。21.3 现状分析由于人类生活节奏越来越快,为了某一件物品花费大量的时间去寻找、比对是不可能的。在这种背景下,越来越多的在线交易软件出现。为人所知的有淘宝、京东、苏宁易购等交易系统,为了客观、准确的描述当前在线交易系统的研究现状,简要分析一下这些交易系统。不管是淘宝还是京东,这些网站都有其强大的用户群,只要是能访问互联网的机器都能访问到这些系统,区域分布广泛。同时,这些系统中所涉及到的交易物品的种类非常多,就淘宝来讲,它本身就融入了很多个体商家,每个商家经营的物品种类都有所差别。这些系统为人类的生活带来了极大的方便,不用为了自然因素或
12、者地域差别而担心买不到商品,只要能登录到这些交易系统就能满足需求。另外,在支付宝的支持下,这些交易软件都可以以网银转账的方式完成付款,快捷方便,支付完成后再由卖家以快递的方式邮寄到用户手中。整个过程不需要花费太多的时间,满足了当下众多用户的需求。然而这些系统也存在一些弊端,客户只能通过图片的形式了解物品,很少能达到实物鉴定的要求,尤其是一些奢侈品,用户对商品质量就很难辨别,有很多用户会收到假冒伪劣产品,消费者的利益得不到保障,虽然可以退货或者换货,但是这样就违反了节约交易时间,提高交易效率的初衷。通过对当前存在的交易系统的研究与剖析,我们能更加深刻了解当前市场所存在的交易系统发展形势和在一些功
13、能方面存在的问题。因此,在本系统的设计过程中,设计者对同城交易系统需求进行认真的分析和设计,遵循传统在线交易的原则,使用当前主流技术对其进行优化。特别对在功能方面做了改进,使该系统更符合当前用户需求,比如说着重同城交易,用户可以选择在自己所处的城市中选择交易对象,这样就实现了交易双方面对面验货的需求。1.4 开发意义社会的发展速度也带动着人类的生活节奏,从对人类的生活影响来说,这款软件有以下几个方面值得深入研究:(1)通过在线交易的方式可以节省大量时间和金钱,这是最大的优势。时间方面主要是相对于获取需求的人群,他们可以节约四处寻找自己所需的时间,不用再像无头苍蝇,这款软件将需求进行了分类,简洁
14、明了,可以供人群快速找到自己的目标。金钱方面主要相对于提供需求的人群,他们可以将自己需要出售或出借的物品直接发布到网络上,免去3了找中介等其他方式所需要支付的服务费。(2)这个 App 安装使用也很简单,只要是一款智能手机,符合版本等级,下载后就能安装,安装后连入互联网就可以登录使用。(3)工作效率高,所有数据都通过数据库获取,简洁明了。(4)安全性高,所有用户都是通过手机号注册,登录时需要验证密码,密码丢失的情况下可以通过手机号找回密码,然后修改密码。(5)可用范围广,App 中提供的交易种类较多,适合各类人群。相对于传统的交易模式来看,这款 App 是存在优势的。但为了更好的让此系统服务大
15、众还需要更多了解人们生活需求和市场需求。42 系统开发工具及开发技术软件一般的产生是建立在某种程序设计语言的基础上,这些程序语言一般是借助软件开发工具进行编写的。本章主要介绍这款同城交易软件所涉及到的开发工具以及相关技术。2.1 开发工具及平台本系统采用的开发工具为 Eclipse 和数据库 SQLyog 以及编辑器 SharpDevelop。通过在 SharpDevelop 中编写数据库语句,增删改查等操作来实现交易系统的各个功能。2.1.1 EclipseEclipse 是 Java 的集成开发环境。它包括了插件开发环境 PDE,这个组件的目的是扩展 Eclipse 的开发人员,因为开发人
16、员可以用它来构建与 Eclipse 环境无缝集成的工具。每个开发者都有同等的发挥场所给 Eclipse 提供插件以及给用户提供统一的集成环境。当然 Eclipse 最突出的优点是它支持当前几乎所有的主流平台,包括Windows,Linux,Solaris,HP-UX 和 AIX,这大大减低了开发跨平台的软件的难度 2。2.1.2 SQLyogSQLyog 由 Webyog 出品,这是一款使用方便、快速简洁的图形化管理 SQL 数据库的产品,通过它可以更方便的管理数据库。相对于其他数据库 SQLyog 有它特点:编程方式是基于 C+和 MySQLAPI;使数据库以及数据库同步更快捷;可以快速备份
17、和还原数据;支持的数据格式较多,比如 XML、CSV、HTML 等;可以批量运行 SQL 脚本,节省时间。2.1.3 SharpDevelopSharpDevelop 给多种程序语言开发提供了平台,包括 C#、VB.NET 和 java,并且还支持多种语言界面。这个开发工具的界面风格与 Office XP 和 VS.NET 很相似,支持书写的代码类型有 C#,XML,HTML 等,还可以对这些语言提供彩色语法显示,同时还能把彩色的代码以 HTML 格式文件输出。SharpDevelop 向外开放的所有源代码,这一点对学习 C#及规范软件开发很有帮助。2.2 开发技术2.2.1 MVC 框架5M
18、VC 全名 Model View Controller,它把一个应用输入,处理,输出的过程分离成三种方式:Model、View、Controller,也就是说,将一个应用分为三个层面:模型层,视图层,控制层 。如图 2-1 MVC 框架:图 2-1 MVC 框架模型用来表示应用程序核心,是应用状态及业务功能的封装,通常是用于处理程序中数据逻辑的部分,比如在数据库中存取数据;视图则是负责应用程序中处理数据显示的部分,一般来说是根据模型数据创建的;控制器通常处理用户交互这一部分,用来从视图将数据提取,控制用户输入,然后把数据发送给模型。View 与 Model 有直接联系,View 可以直接调用 Model 查询其状态信息,当 Model 的状态发生改变时,它就会直接通知 View3。2.2.2 Activity 生命周期Activity 生命周期流程图如图 2-2 生命周期: