1、本科生毕业论文题 目: 基于Android平台的移动电子 商务客户端设计与实现 摘要随着移动电子商务的快速发展,传统互联网企业的移动化是现在和未来的一种必然趋势。该论文讲述针对基于Android平台的移动电子商务平台的移动电子商务客户端设计与实现。设计实现了一个电子商务网站的智能手机应用。该论文主要从Android端APP的分析,设计和开发的全部过程。结合数据流图,ER图,程序流程图等对系统的设计过程进行详尽的描述。本文共分成绪论、需求分析、程序分析、详细设计、代码的编码等着几个部分。该系统采用的是C/S的开发模式,开发语言是JAVA语言,主要使用的开发工具是Eclipse 4.2以及Goog
2、le的Android开发插件ADT22.0。关键字:android,java,智能,电子商务,移动互联网,移动购物,C/S开发模式ABSTRACTWith the rapid development of mobile e-commerce, mobile and traditional Internet business now and in the future an inevitable trend. The paper describes the platform for android based mobile e-commerce platform for mobile e-com
3、merce clients design and implementation.The thesis of APP from the Android side analysis, design and development of the whole process. Combines data flow diagram, ER diagram, process flow chart of the system design process detailed description. This paper is divided into an introduction, needs analy
4、sis, program analysis, detailed design, code, coding waited several parts. The system uses the C / S development model, development of language is JAVA language, the main use of development tools is Eclipse 4.2 and Googles Android development plug ADT22.0.Key Words: android, java, intelligence, e-co
5、mmerce, mobile Internet, mobile shopping, C / S development model目录摘要2ABSTRACT3目录41绪论61.1课题背景61.2课题的意义61.3开发工具、开发语言的选用及介绍71.3.1开发工具71.3.2JAVA语言72Android平台简介82.1系统简介82.2系统层次架构82.2.1应用程序层82.2.2应用程序框架层92.2.3Android运行时库与其他库92.2.4Linux内核层103系统分析113.1可行性分析113.2需求分析114系统总体设计124.1框架设计124.2首页设计134.3分类设计144.4
6、购物车设计144.5会员中心设计154.6更多设计164.7系统模块化设计175详细设计195.1首页设计195.1.1首页默认页面设计195.1.2首页右划页面设计205.2分类设计215.3购物车设计245.3.1有商品情况的设计245.3.2无商品情况的设计285.4会员中心设计295.4.1头像部分设计305.4.2交易管理305.4.3我的特权305.4.4账号管理315.5“更多”设计315.6搜索设计335.7菜单键设计36结论40参考文献41致谢421 绪论1.1 课题背景随着宽带无线接入技术和移动终端技术的飞速发展,伴随着移动智能终端的快速普及,人们迫切希望能够随时随地乃至在
7、移动过程中都能方便地从互联网获取信息和服务,移动互联网应运而生并迅猛发展。其中移动电子商务领是移动互联网重大组成领域之一。移动电子商务就是利用手机、PDA及掌上电脑等无线终端进行的B2B、B2C或C2C的电子商务。它将因特网、移动通信技术、短距离通信技术及其它信息处理技术完美的结合,使人们可以在任何时间、任何地点进行各种商贸活动,实现随时随地、线上线下的购物与交易、在线电子支付以及各种交易活动、商务活动、金融活动和相关的综合服务活动等。移动电子商务的突飞猛进,带来的是该领域的支持产业之一软件服务的快速变革。很多传统的互联网产业主动或者被动进行布局移动互联网。Google公司的android平台
8、是目前各大主流的移动操作系统之一。紧随其后的是苹果公司的IOS平台。这两个平台的市场占有率达到了91.1%以上。所以该论文讲述针对基于android平台的移动电子商务平台的移动电子商务客户端设计与实现。移动电子商务以及得到了快速的发展。例如当当网在2013年第一季度移动端的交易量与传统PC互联网交易量的比例是1:3。移动电子商务目前还处于强劲增长趋势。传统互联网企业大部分已经向移动端转移。以传统的运动服装业领军企业之一的特步为例。移动智能设备的交易比例正在呈现不断上涨的趋势。移动电子商务比传统企业相比,在成本优势上非常明显。所以本课题选用的设计和实现高性能的移动电子商务APP为研究课题。1.2
9、 课题的意义设计高效的移动智能端APP能够提升用户使用移动端的购物体验。都死实现相同功能的APP,良好的界面,流畅的操作能够给消费者良好的购物体验,同时也是提升企业品牌的重要手段之一。一个APP要具备的功能不仅仅是实现了它的功能,如果没有一个良好的用户接口,将对该APP的使用率大打折扣。用户体验主要体现在两个方面,一是用户感受到的软件的性能,比如操作的反应速度,另一方面是软件的界面,良好的界面能够感知良好的。以当当网为例,当当网在2013年第一季度中移动端的交易量占到总交易量的三分之一,并且处于不断增长的势头。虽然目前还没有到完全取代的地步,传统企业的向移动化转型是必然的趋势。1.3 开发工具
10、、开发语言的选用及介绍1.3.1 开发工具设计和实现该系统主要要用到的工具是Balsamiq Mockups、Eclipse和android系统手机或者是想要的模拟器。其中BM主要的用途是用作原型图的设计,当需求基本确定的时候,根据相应的需求绘制出原型图。Eclipse主要功能是编写代码并且调试程序。Android手机或者模拟器主要的作用是调试程序,显示出程序的运行效果。1.3.2 JAVA语言Java 编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。Java编程语言的风格十分接近C、C+语言。Java是一个纯粹的面向对象的程序设计语言,它
11、继承了 C+语言面向对象技术的核心。Java舍弃了C语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。Java不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“
12、一次编译、到处执行”的跨平台特性。不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。2 Android平台简介2.1 系统简介Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。Android操作系统最初由Andy Rubin开发,主要支持手机。2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良A
13、ndroid系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。第一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机等。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。 2012年11月数据显示,Android占据全球智能手机操作系统市场76%的份额,中国市场占有率为90%。2.2 系统层次架构Android系统包括了移动电话所需的全部软件,由操作系统、中间件、UI(UserInterface)及应用程序组成。开发人员使用Java语言,开发运行于Dalvi
14、k虚拟机上的应用程序。其运行效率比一般嵌入式“linux操作系统上的J2ME程序高。Android系统架构自底向上由以下4个层次组成:基于Linux的内核模块、运行时库与其他库、应用程序框架、应用程序。2.2.1 应用程序层Android会同一系列核心应用程序包一起发布,该应用程序包包括客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA语言编写的。2.2.2 应用程序框架层开发人员也可以完全访问核心应用程序所使用的API框架。该应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不
15、过得遵循框架的安全性)。同样,该应用程序重用机制也使用户可以方便的替换程序组件。隐藏在每个应用后面的是一系列的服务和系统, 其中包括;丰富而又可扩展的视图(Views),可以用来构建应用程序, 它包括列表(Lists),网格(Grids),文本框(Text boxes),按钮(Buttons), 甚至可嵌入的web浏览器。内容提供器(Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库), 或者共享它们自己的数据资源管理器(Resource Manager)提供 非代码资源的访问,如本地字符串,图形,和布局文件(Layout files )。通知管理器
16、(Notification Manager) 使得应用程序可以在状态栏中显示自定义的提示信息。活动管理器(Activity Manager) 用来管理应用程序生命周期并提供常用的导航回退功能。2.2.3 Android运行时库与其他库Android 包含一些C/C+库,这些库能被Android系统中不同的组件使用。它们通过 Android 应用程序框架为开发者提供服务。以下是一些核心库:系统 C 库:一个从BSD继承来的标准C系统函数库 Libc , 它是专门为基于Embedded linux的设备定制的。媒体库:基于PacketVideo OpenCORE;该库支持多种常用的音频、视频格式回
17、放和录制,同时支持静态图像文件。编码格式包括MPEG4, H.264, MP3, AAC, AMR, JPG, PNG 。Surface Manager:对显示子系统的管理,并且为多个应用程序提 供了2D和3D图层的无缝融合。LibWebCore:一个最新的web浏览器引擎用,支持Android浏览器和一个可嵌入的web视图。2.2.4 Linux内核层Android基于Linux操作系统,由硬件、系统内核、系统服务和应用程序等四大部分组成。其中,内核(Kerne1)是最核心的部分。其主要作用在于与计算机硬件进行交互,实现对硬件的编程控制和接口操作。调度访问硬件资源,同时向应用程序提供一个高级
18、的执行环境和对硬件的虚拟接口。主要功能包括:中断服务程序、进程调度程序、进程地址空间的内存管理、进程间通信。内核与普通应用程序不同,其拥有所有硬件设备的访问权限以及启动时即划分的受保护的内存空间。和标准的Linux内核一样,Android内核主要实现内存管理、进程调度、进程间通信等功能。Android内核是在标准Linux内核的基础上修改而成。为了适应嵌入式硬件环境和移动应用程序的开发。Android对标准Linux内核进行了一定的修改。为了对比分析Android内核,在Ubuntu操作系统上搭建了Android内核的编译开发平台,通过repo,下载最新的Android内核代码版本cupcak
19、e从获得的内核源码树的根目录结构看,Android内核源码与标准Linux内核并无不同。 3 系统分析系统分析包含两个内容,一是可行性分析,另一个是需求分析。开发APP之前必须进行充分的分析。只有通过充分分析后再做设计才能是后续工作更加顺利。可行性分析是为了弄清楚系统开发的项目是不是可以实现和值得进行研究的过程,所以,进行可执行性的分析是非常必要的。需求分析是搞清楚APP要做什么,只有知道要做什么才能使开发出来的APP符合用户的需求。3.1 可行性分析经济可行性:该APP的设计开发需要一定的时间成本,由于完成该APP主要是利用了一些闲余时间进行开发的,时间成本可以忽视不记。由于APP的美工部分
20、是认识的朋友帮忙设计的,所以这点成本也可以相对忽略不计,所以自己个人投入的各种成本可以忽略不计,这点是可行的。由于开发该APP所使用的开发工具是自己的Android智能手机和一些开源的开发工具Eclipse和Google的ADT开发插件。所以开发工具上没有相应的费用投入。总体来说该APP的开发在人力、物力和财力的投入上是可行的,所以经济方面是可行的。技术可行性:开发该APP主要要用到的语言是JAVA,由于本人在大学期间较早自学了JAVA编程语言,能够胜任一些大部分的功能开发。如果遇到相对较难的技术难点。可以通过网络或者专业书的方式来提供解决方案。目前来说android技术已经是相对成熟的开发技
21、术。所以在技术方面是可行的。法律可行性:由于android系统开源系统,只要符合google的相关的服务条款任何人都可以免费获取。该的开发已经经过各方权利所有人的授权,在法律上不构成任何的侵权,在法律上是可行的。3.2 需求分析根据客户需求,该APP主要是实现的功能是将客户网站的相应功能进行技术上的转移,将传统网页上的功能转移到相应的移动客户端。所有的相关需求通过需求文档的方式进行确定。4 系统总体设计由于该APP总体上功能繁多,如何设计界面优美且高效的APP是一种设计上的挑战。设计主要考虑一下几个方面:1) 用户体验。良好的用户体验主要表现在两个方面,一是总体的UI风格,另一个方面是用户操作
22、时的感受到的流畅度、完整度和方便性。UI风格应该与WEB端的界面风格保持一致,这样可以减弱消费者的警惕性。风格一致还可以是移动端和WEB端更加具有一致性和整体性。2) APP运行效率。在最短的时间内完成用户所要做的操作,尽量减少APP反应的滞后。要实现这点,可以通过两个方面来提升:一是减少网络数据传输的延迟性。另一个是在完成相应功能的前提下减少APP所要做的操作,避免一些不必要的操作。3) 代码的效率。良好的编程习惯是编写高效代码的基本功。代码应该少而优。代码必须具备一定的健壮性、安全性和高效性。4.1 框架设计该APP的框架主要依靠功能的划分进行设计的。首先分成五大部分,分别是:首页、分类、
23、购物车、会员中心、更多。a) 首页主要组成部分有:首页头部广告区、功效专区、固定功能菜单、四大专区、买家说说、搜索。首页右划区的组成界面是:美妆时尚。b) 分类部分主要有两个部分组成。一个是有二级子目录的选项,一种是指向单个功效商品的选项。c) 购物车的主要组成部分是:显示购物车数量的详情,其中包括显示商品的数量、购物车中总的费用以及列出所购商品的基本详情。当购物车中的数量为空的时候,显示购物车为空,还显示最近的浏览记录。d) 会员中心的主要组成部分是:个人基本信息、交易管理、我的特权、账号管理和结算。其中交易管理的只能够有:我的订单、物流管理、正品查询、我的优惠券、我的收藏夹。我的特权部分包
24、括:VIP特卖、生日优惠券。账号管理包括:个人资料的修改、修改密码、收货地址的管理、微博同步设置。e) 更多部分组成部分是:客服热线、检查更新、清除缓存、使用帮助、关于。从图 4-1 可以比较明了的看出各个功能结构欢迎页App框架首页分类购物车会员中心更多广告区功效专区常见功能菜单四大专区买家说说有商品时无商品时交易管理我的特权账号管理图4-1 功能模块图4.2 首页设计首页分成两个部分。一个是默认的首页部分,另一个部分是首页右划部分。默认的首页部分主要分为广告区、功效专区、常用菜单区、四大专区和买家说说。首页右划部分只有一个功能,就是美妆说说。广告区:可以根据后台的提供的字段type改变点击
25、后跳转的去处。如果选项包含的type字段的值是keyword则跳转到具体的商品详情界面。如果type字段的值是pop_id则跳转到产品列表。功效专区:该区主要处理的事情是根据产品的功效设置相应的专区,如面膜专区、彩妆专区、护肤专区。点击该区域将根据选项中包含的brand_id进行远程数据请求,解析返回的数据后进入产品列表。常用菜单区:该区有四个常用的功能按钮。分别是物流查询、防伪验证、收藏夹、签到中心。四大专区:分别是VIP俱乐部、限时特卖、爆款推荐、超值套装。买家说说只显示五条评价最多的记录。首页右划部分只有美妆时尚一个列表。点击列表选项进入到商品详情页面。首页默认首页右划界面广告区功效专区
26、常见功能区四大专区买家说说美妆时尚图4-2 首页功能模块图4.3 分类设计对于一个电子商务类的APP,其分类功能是很重要的一项。它能将消费者的购买欲转化成实实在在的订单,所以分类功能在导航菜单中占有一席之地。一个分类设计的好坏也是直接影响到用户的体验。一个良好的分类设计能够简单快速准确的定位消费者的需求。该APP的分类设计分成两个部分。一个是有二级子目录的选项,一种是指向单个功效商品的选项。点击一级菜单展开二级菜单。目前设计的菜单的最深级别就是二级菜单。到了二级菜单再点击就进入了商品列表或者商品详情。4.4 购物车设计该APP的购物车采用离线方式。这样设计的原因是考虑到流量的限制问题。由于该A
27、PP要显示较多的流量。所以在一些不是很重要的地方尽量减少与远程服务器的交互。购物车有两种情况。一种情况是购物车中有商品,另一种是购物车为空。这两种显示的。购物车中有商品时。要显示商品的数量、总费用以及具体的商品列表。商品列表显示商品的图片、名称、价格、数量、原价以及对数量增加的按钮和删除该商品的按钮。购物车中无商品时。提示目前的购物车是为空,引导用户去首页逛逛。同时增加了浏览记录,方便消费者查找浏览过得商品。4.5 会员中心设计会员中心是导航菜单栏中最复杂的一个。主要功能繁多。会员中心主要分成四个部分。分别是个人信息、交易管理、我的特权和账号管理。a) 个人信息。个人信息主要显示一些基本的会员
28、信息。b) 交易管理。交易管理分为我的订单、物流管理、正品验证、我的优惠券、我的收藏夹。我的订单主要处理三个功能,正在进行的订单、已经完成订单、已经取消三大功能。物流管理处理的根据订单号查询物流和根据手机号码查询物流。正品验证处理的是查询商品是否为正品。我的优惠券主要负责管理会员的各种订单。c) 我的特权。我的特权有两项,一项是VIP特卖,另一项是生日特权。VIP特卖是正对不同等级的会员享受不同的购物优惠。生日特权是在会员生日的当天有相应的购物优惠。修改生日是一次性的。如果会员还没有填写生日,要提示信息不够完善,并且跳转到修改个人信息的界面。在修改界面中修改会员的生日信息。如果原先已有生日,则
29、判断今天是否是会员的生日。如果是可以领取相应的生日优惠券。d) 账号管理。账号管理一般来说使用的频率相对较低,所以放在最下面。虽然使用少,但是这些功能还是很重要的。账号管理分为个人资料、修改密码、收货地址管理和微博同步设置。个人资料的主要作用是查看和修改个人信息资料。修改密码指的是修改登录密码。收货地址管理主要要实现的功能是添加、修改和删除收货地址。微博同步设置指调用新浪微博和腾讯微博的接口,可以用于登录APP和分享购物喜悦。会员中心个人信息交易管理我的特权账号管理我的订单物流管理正品验证我的优惠券我的收藏夹VIP特卖生日特权个人资料修改密码收货地址管理微博同步设置图4-5 会员中心功能结构图
30、4.6 更多设计“更多”选项主要是一些辅助性功能的设置。“更多”选项包含的主要功能有:客服热线、检测更新、清除缓存、使用帮助、关于。a) 客服服务。该功能主要实现的是方便消费者呼叫客服热线。b) 检测更新。该APP设计的程序更新需要手动点击检测更新。所以该功能的是为了更新APP的版本,进行升级优化。Google的最新政策是不推荐使用APP自带的升级功能,主要是处于安全性考虑。c) 清除缓存。由于android手机的版本千差万别。一方面是手机的硬件配置也不尽相同。由于电子商务类的APP要进行较多的图片加载,所以造成大量的图片缓存。清除这些大量的数据缓存有利于减轻手机的运行负担,释放出资源供其他A
31、PP使用。另一方面是因为处于安全隐私的保护。将保持在手机上的个人信息和APP设置信息进行清除也是很有必要的。d) 使用帮助。该功能主要是为了给一些新用户进行使用。用户可以通过这种自助的服务帮助解决一些疑问。e) 关于。该模块是为介绍一些企业信息和APP信息。更多客服热线更新检测清除缓存使用帮助关于图4-6 更多模块的功能结构图4.7 系统模块化设计模块化是指解决一个复杂问题时自上而下逐层将系统划分成若干块的过程。每一个模块完成一个特定的功能,所有的模块按某种方法组织起来,成为一个整体,完成整个系统所要求的功能。系统模块划分不能使任意,要遵循高内聚低耦合的设计思路,应尽量保持其独立性。是为了降低系统和复杂性,提高可读性、可维护性。也就是说,每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单,尽量做到提高模块的独立,为设计高质量的系统结构奠定基础。系统模块化设计的任务是划分子系统,然后确定子系统的模块结构,并画出模块结构图。在这个过程中
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1