Android系统原理及应用报告
题 目:
学 号:
班 级:
姓 名:
完成时间
报告要求须知
- 项目报告按照实践开发实际情况编写,着重工程项目的需求分析、系统功能分析及模块图、数据库及E-R图设计、设计实施过程、测试修改过程及项目代码优化过程,最后进行开发经验总结。
- 项目报告的主题内容要求思路清晰,合乎逻辑,用语简介准确;内容务求客观、科学,专业术语及图表应用正确。
- 报告中的总结是实训过程的总体结论,内容主要包括“技术收获和心得体会”,也包括项目存在的不足和待完善改进的地方。
- 报告版面要求:字数不少于1000字,用Word排版及标准A4打印纸进行打印。页面上、下、右边距均为2.5厘米,左边距为3厘米。报告正文部分行间距为“1.5倍行距”。正文部分文字采用宋体、小四号,正文中一级标题采用宋体、四号、加粗,二级标题采用宋体、小四加粗,三级以后标题均采用宋体、小四。
- 项目开发结束后需按照要求上交本报告及完整的项目文件。
- 项目成绩依据学生的实践表现、完成的项目质量、撰写报告等方面综合情况,根据教学大纲的成绩评定规则,由指导教师进行评定。
目录
1 摘要 2
2 系统分析设计与实现 3
2.1 系统需求分析及选题依据 3
2.2 系统总体设计 3
2.2.1功能模块图 3
2.2.2总体流程图 5
2.3 系统详细设计 6
2.3.1系统资源 6
2.3.2登陆注册理模块详细设计 7
2.3.3查看天气模块详细设计 8
2.3.4查看笑话块详细设计 9
2.3.5查看美女图片详细设计 10
2.3.6跳转手机应用模块详细设计 11
3 系统测试 13
4 总结 17
5 参考文献 19
1 摘要
Android是基于Linux核的软件平台和操作系统,以其特有的开放性在智能手机、平板电脑等领域广泛应用。近几年电子商务得到了迅速的发展,通过Internet进行交易己成为一种潮流。两者的结合,便产生了具有巨大发展潜力的移动电子商务。
本系统主要是探索Android与电子商务的结合,以手机商城为例,实现用户浏览,搜索,购买商品等功能。本商城选择sqlite数据库,实现对数据库中商品进行增,删,改,查的功能,并对客户订单进行管理。该系统较平常购物系统有更好的移动性与跨平台性。通过测试,已能够在Android手机上运行使用其各项购物流程。
关键词:Android;sqilte;电子商务;网上购物
2 系统分析设计与实现
2.1 系统需求分析及选题依据
2.1.1 选题的目的
该课题要求设计并实现一个基于Android平台的手机网上商城。随着Internet的不断发展,网络在人们生活中占据了不可代替的地位。以前人们经常通过PC机的购物系统进行商品的浏览和购买,使他们享受足不出户的购物乐趣。但这些已经越来越不能满足人们日益增长的生活需求,我们想要随时随地都可以关注我们喜欢的商品的动向,它有没有打折或者是其他的一些信息,这就使得我们需要一种可以安装在手机上的商城软件,这样即方便了人们的出行携带,又方便人们随时随地进行浏览商品和购物。这样的软件还增加了客户购买的机率,给商家创造了更大的利润,所以我选择设计这款软件。因为我自己本身就是特别喜欢网上购物,这样的软件不仅操作起来方便快捷,而且能最大限度的服务大众,是人们现在生活不可或缺的服务性软件。
2.1.2选题的意义
基于Android平台的手机网上商城的设计实现改变了人们以往的购物模式,人们不必被限制在电脑前购物,也不需要刻意去找时间去上网浏览商品,或者是购物。只要拥有了Android手机,你就可以随时随地的查看商品,不管是什么地方、什么时间生产的商品你都可以通过手机,动动你的手指轻松的查找到,这样不仅增加了购物的效率,而且也能使得人们心情愉悦,再也不会因为想买自己心仪的商品却怎么也找不到而苦恼了。u人们在一天的生活中,可能等待的时间是最久的,但随着生活节奏的加快,很多人不愿意白白的浪费自己的时间等待,有了这款软件,人们可以利用自己的等待时间做一些自己感兴趣的事,比如说淘一件自己喜欢的衣服,给即将要来的春天添一件新装等等。
总之,在人们高效率生活的今天,如何节约时间、如何高效的利用时间已经成了所有人都会去思考的问题。基于Android平台的手机网上商城正好给人们节约下了购物的时间,让他们可以将这些时间投入到工作或者是生活的其他方面,没有了时间的限制,购物才能变的更加便捷和有趣。
2.2 系统总体设计
2.2.1总体功能设计
系统的总体功能包括注册登录、浏览搜索、查看详情、立即购买、加入购物车结算、我的个人信息
系统的总体功能模块图如下图2-1所示:
图2-1 系统功能模块图
2.2.2总体流程设计
系统的总体流程是:首先打开登录页面,然后注册后登录首页,在首页可以浏览搜索自己喜欢的商品查看详情,在商品详情页额可以立即购买或暂时加入购物车。在购物车页面可以选中要购买的商品进行结算,所有购买的商品可以在我的页面中的我的订单中查看购买详情。
系统的总体流程图如下图2-2所示:
图2-2系统总体流程图
2.2.3数据库设计
(1)数据库E-R图设计
用户信息包括:用户名、密码、地址。用户信息E-R图如图2-3所示。
图2-3 用户信息E-R图
商品信息包括编号、名称、标题、分类、价格、图片。用户信息E-R图如图2-4所示。
图2-4 商品信息E-R图
订单信息包括用户名,商品编号、商品名称、商品价格、收货地址。用户信息E-R图如图2-5所示。
图2-5 订单信息E-R图
(2)数据库表格设计
本系统共包3个表格,具体如下:
根据用户信息E-R图可设计出数据库所对应的用户信息的表格,其中用户的username是主键,不允许为空,为字符型20个字节,其余也是字符型,长度略有不同。
表2-1 user用户信息表
列名 | 数据类型 | 长度 | 允许空 | 说明 |
username | varchar | 20 | N | 用户名 |
password | varchar | 30 | Y | 密码 |
address | varchar | 100 | N | 收货地址 |
商品信息表stuff
表2-2 stuff商品信息表
列名 | 数据类型 | 长度 | 允许空 | 说明 |
id | int | 8 | N | 编号 |
name | varchar | 30 | N | 名称 |
title | varchar | 100 | 标题 | |
kind | varchar | 10 | N | 分类 |
price | float | 10 | N | 价格 |
pic | int | 100 | N | 图片路径转的二进制数据 |
订单信息表record
表2-3 record订单信息表
列名 | 数据类型 | 长度 | 允许空 | 说明 |
id | int | 8 | N | 商品编号 |
name | varchar | 30 | N | 商品名称 |
title | varchar | 100 | N | 商品标题 |
address | varchar | 100 | N | 收货地址 |
price | float | 10 | N | 价格 |
2.3 系统详细设计
2.3.1系统资源
在程序开发阶段,首先确定工程名为SmallShop,据程序模块设计的内容,建立SmallShop工程。工程源代码的结构如下图2-6、2-7所示。
图2-6系统资源图1
图2-7系统资源图2
2.3.2登录注册理模块详细设计
功能描述:登录注册程序
效果截图如下图2-8所示
图2-8注册登录效果图
2.3.3商店首页搜索浏览模块详细设计
功能描述:在商店主页可以搜索浏览展示商品信息列表。
效果截图如下图2-9所示:
图2-9首页搜索浏览效果图
2.3.4商品详情页模块详细设计
功能描述:展示商品详细信息
效果截图如下图2-10所示
图2-10 商品详情页效果图
2.3.5购物车模块详细设计
功能描述:选中购物车商品核算价格进行结算
效果截图如下图2-11所示
图2-11 购物车模块效果图
2.3.6我的模块详细设计
功能描述:修改收货地址和查看我的订单等信息
效果截图如如下图2-12所示:
图2-12我的模块效果图
3 系统测试
测试过程及效果图如下所示:
- 测试登录页面功能,过程描述:根据user数据表,使用测例:用户名xiaoming,密码xm666888进行注册登录,功能测试完好。测试过程如下图3-1所示。
图3-1 注册登录测试图
- 测试搜索功能,过程描述:使用关键词键盘进行搜索,能搜到键盘商品,功能测试完好。测试过程如下图3-2所示。
图3-2 搜索功能测试图
- 测试购物车结算价格核算功能,过程描述:分别选中不同商品核算价格,功能测试完好。测试过程如下图3-3所示。
图3-3 价格核算功能测试图
4 总结
1、知道如何快速掌握一门语言。在学习JAVA的过程中,娄老师先让我们快速地将课本浏览一遍,找出自己不会的地方,然后带着问题去做实验,这样就能够深刻理解课本中的内容,效率很高;
2、有了做工程的经验。通过项目实践,基本了解了做项目的步骤和方法,即可行性分析、需求分析、总体设计、详细设计、编码测试、运行维护,尤其是对需求分析有了更深刻的了理解,为以后的科研学习打下了基础。
3、基本掌握了Android应用程序开发的一般流程。对常用控件基本掌握其用法,对其事件的监听方法也基本掌握。学习Android不仅是对前沿开发技术的了解,也是对编程知识的一次提升。
4、通过学习Android的控件、布局、Activity、Service等一系列基础知识,对整个Android的开发有了大致的了解。例如:要的布局(或者控件),在学习界面中,我发现Android为我们提供了很好的类似反射机制,通过Layout文件夹下的配置文件,可以快速的形成界面,在配置文件可以设置属性或者样式都是很快捷方便对比较特殊的界面也可以通过处理嵌入到指定的界面,同样你可以通过java代码直接创建View进行添加,不过这种方式比较复杂。
5、对一些点击、选中、按键等处理的事件,界面之间的跳转Intent管理,通过Bundle对数据在界面之间进行传输。
Android是一种很错的手机系统,使用起来简单,而且可以根据自己的需求选择适合自己的版本,非常的方便。我要多多学习关于android的知识,在未来,将android系统研发的更加人性化,使用起来更加的舒适。
[1]李刚彪.数据库加密技术的研讨与完成[D].太原理工大学,2010:18-78.
[2]杨云君.Android的设计与完成[M].北京:机械工业出版社,2013:5-65.
[3]秦明甫.基于混沌实际的数字图像加密研讨[D].重庆大学,2009:34-48.
[4]柯除夕.Android内核分析[M].北京:电子工业出版社,2011:67-98.
[5]李刚.疯狂Android讲义[M].北京:电子工业出版社,2013:12-87.
[6]吴明航.DES和RSA混合加密算法的研讨[D].哈尔滨工业大学,2013:13-56.
[7]顶峰.Linux内存管理的设计与完成[D].沈阳工业大学,2007:45-89
[8]陈最.基于Android平台挪动终端通明加密零碎的研讨与完成[D].重庆理工大学,2012:108-150.
[9]佟晓筠,王翥,杜宇,岳银亮.基于软件平安混合加密技术的研讨[J].计算机工程,2004,23(33):98-100.
[10]程庭,张明慧,石公营.一种基于DES和RSA算法的数据加密方案及完成[J].河南教育学院学报(自然迷信版),2003,22(3):69-71.
[11]XinChen,SongweiMa,BingliGuo,YanWang,JuhaoLi,ZhangyuanChen,YongqiHe.Anovelfragmentation-awarespectrumallocationalgorithminflexiblebandwidthopticalnetworks[J].OpticalSwitchingandNetworking,2014(12):6-22.
[12]廉士国,李忠新,王执铨.两种基于局部加密的图像和视频加密方案[J].计算机工程,2004,4(11):11-34.
[13]Zhu,ZhiwuLiu,XuLi,Xiangyu.RatchetingBehaviorsoftheCarbonFiberReinforcedPEEKComposites:ExperimentalStudyandNumericalSimulation[J].Polymers&PolymerComposite,2014,(221):45-230.
项目技术简介
序号 | 技术 | 项目中应用 | 实现效果 |
1 | 图形界面设计及常用控件 | 所有Activity,实现了登录注册、搜索框、商品列表 | 如报告中图2-1~12 |
2 | 事件监听 | 所有Activity,各个按钮图标的单击事件 | 如图2-9的搜索图标 |
3 | 菜单控件 | 无 | 无 |
4 | 多个页面、页面之间的跳转,页面之间的信息传递 | 登录页面和主页面的用户名传递 | 如报告中图2-1和图2-12 |
5 | 广播应用 | 无 | 无 |
6 | 后台服务 | 无 | 无 |
7 | 数据的简单存储 | 登录中用SharedPreferences读取了用户名和密码 | 如报告中图2-1 |
8 | 数据的文件存储(SD卡)、SQLite存储(增删改查操作) | 商品加入购物车和结算清空购物车 | 如报告中图2-10和图2-11 |
9 | 数据共享技术 | 使用SharedPreferences共享用户名,使用sqlite共享商品数据 | 如报告中图2-1的用户密码共享,图2-12订单记录 |
10 | 新功能 | 无新功能,使用的Android基础功能 | 无 |
11 | 新技术 | 无新技术,使用的Android基础功能 | 无 |
12 | 相关算法 | 无新算法,使用的Android基础算法 | 无 |
13 | 其他 | 使用BottomNavigationView控件实现了底部导航 | 如报告中的图2-9 |