当前位置: 首页 > news >正文

andriod安卓水果商城系统课设

一、目的及任务要求

随着当今社会经济的快速发展和网络的迅速普及,手机基本成为了每个人都随身携带的电子产品。传统的购物方式已经满足不了现代人日益追求便利及高效率的购物心理,而通过移动手机上的在线购物系统,可以便捷地甚至足不出门,想要的商品就能送到家,免除了在街上或超市中苦苦寻找商品而付出的劳动成本。
正因为手机成为了现代人几乎都随身携带的电子产品,所以本设计的网上水果购物系统则围绕手机消费品来进行探讨、开发设计和实现。简单的展示于机网上水果购物系统购物体验。现代化的生活节奏使人们外出购物的时间越来越少,交通的拥挤与日趋增大的店面延长了购物的时间和精力,琳琅满目的商品也使消费者眼花缭乱,让人你们迫切需要新的、快捷、和方便的购物方式及服务。

激烈的市场竞争迫使制造商和零售商不断去寻求商品成本费用,缩短流转周期的途径。电子商业正迎合了这种需求。同时,也是消费者免去了车马之劳,并使消费者在商品的海洋中得到了最好的服务

现代科学技术,尤其是电子信息技术全面地、全方位地向商品流通领域渗透,对传统的商业购销调存以及交易、消费等商品的活动、商业结构、商业地位都产生了深刻的影响。信息技术的发展带来新的商业革命,形成电子商业。

内容:基于Android(安卓)平台的网上水果购物系统,主要通过安装APP移动客户端来实现在线购物,并提供基本的网上水果购物系统体验,其中包括购物商城欢迎界面、购物商城首页、购物商城购物车及购物商城个人中心。

购物商城首页:简单的说,就是展示商品的界面。通过首页的分类商品信息,让使用者了解商品的基本信息。

购物商城购物车:把合适的商品或者准备购物的商品进行集中管理.方便使用者查看已经挑选过的商品。

支付:可采用多种线上支付方式完成购物需求

二、项目开发环境及部署

  1. 开发环境:

开发工具: Android Studio

使用最新版本的Android Studio作为主要的集成开发环境(IDE)。

编程语言: java

使用Kotlin作为主要的开发语言,享受其现代化特性。

版本控制: Git

使用Git进行版本控制,便于团队协作和版本管理。

  1. 技术选型:

UI设计: XML、Material Design

使用XML进行界面布局,遵循Material Design设计规范。

数据存储: LitePal

使用LitePal数据库存储商品信息、用户数据等。

支付功能: 模拟实现

模拟实现支付功能,可以使用虚拟货币或简单的支付方式。

三、项目实践内容

1、项目需求描述:

1.1需求分析:

1.传统线下购物费时又费力切购物效率低下,安卓水果购物APP可以做到线上高效购物,用最短的时间浏览最多的商品

2.商城购物APP采取线上支付功能,相比较传统现金交易更加安全

3.线下水果商品价格鱼龙混杂不够透明化,严重损坏消费者的利益,急需一款能使市场商品价格透明化,保障消费者合法权益交付的软件产品名称:网上购物商城系统

1.2需求实现模块

总体:前台购物,后台管理

软件系统模块清单:

用户注册/登陆
用户信息修改
实现购物
查看购物车
在这里插入图片描述

商品管理
订单管理
用户管理
1.3具体功能实现

1.商城界面设计,如各类商品名称,价格及支付界面等等
2.使用Fragment实现底部导航栏切换界面
3.使用Handler延迟跳转(启动页面延迟1秒跳转到主页面)
4.BaseAdapter的使用(为listview填充数据)
5.ViewHolder的使用(为listview滚动的时候快速设置值)
6.LitePal数据库的创建以及增删查改(模拟存储购物车商品)
7.SharedPreferences的使用(模拟存储收件人信息)
8.自定义Dialog(确认删除对话框)overridePendingTransition的使用(切换Activity时的动画效果)

2、项目设计描述

2.1概要设计

用户可以在APP中为用户提供了清晰简洁的UI界面,可以在APP中挑选商品,根据关键字查询需要的商品,点击商品可以查看详细信息,将自己喜欢的商品加入购物车中,也可以将不想要的商品从购物车中移除,想要购买的商品,点击结算下单购买,用户可以在APP中注册账号,注册后即可登录商城,进行商品的挑选,如果用户已经有账号了,但是忘记密码,可以根据注册时预留的账号和电话证的方式进行密码修改,用户需要购买商品需要填写收货地址,可以通过用户在个人中心内的地址进行购买.另外还设计了管理账户,可对水果界面,订单,用户信息进行编辑.

2.2详细设计与实测

2.2.1开机界面

用户打开软件后并不会第一时间让用户登录注册,而是会直接进入到水果商品的浏览界面.
在这里插入图片描述

图1-1

2.2.2登录注册

当用户处于非登录状态时,点击水果界面丶购物车丶个人中心时都会自动跳转到登录注册界面,图1-2为软件登录注册界面,登录需要用户输入账号和密码,选择普通用户.
在这里插入图片描述

图1-2

用户登录注册等界面如图所示.若用户还未有所属账号,则点击注册按钮进行注册操作如图1-3所示:
在这里插入图片描述

图1-3

2.2.3个人信息修改

注册成功后可在”我的”内查看账户信息,同时以后如若信息有所变动的话可以再次进行修改如图1-4,其中可修改选项有账号、昵称、电话以及收货地址.
在这里插入图片描述

图1-4

若用户账号密码修改,通过账号和注册时留下的电话号码可以进行密码的修改
在这里插入图片描述

如图1-5,
在这里插入图片描述

1-6所示

2.2.5搜索水果

登录后软件后下方有”首页””购物车”以及”我的”选项可共选择.首页展示的是商城各类水果名称及其价格,用户可在此选择自己想要的水果品类并且可以搜索自己想要的水果名称,如图2-1所示:

在这里插入图片描述

图2-1

用户点击进去后可以查看到水果的详细信息如上架时间丶水果介绍丶价格以及是否加入购物车,如图2-2所示:

在这里插入图片描述

图2-2

2.2.6购物车及支付

加入购物车后可进行结算购买操作,支付可采取微信支付、支付宝支付等方式如图2-3图2-4

在这里插入图片描述

2.2.7我的订单

用户购买后会在”我的订单处”生成订单详情,用户可进行查看,如图2-5

在这里插入图片描述

图2-5

2.2.8水果商城管理者

管理员通过输入管理账号(admin)和密码(123456),点击’管理员’选项’进行管理员登录,如图3-1,如图3-1:

在这里插入图片描述

2.2.9添加丶删除水果

管理者可以自主添加或者删除商城中的水果品类,如图所示3-3 ,3-4

在这里插入图片描述

2.2.10用户管理

管理员可对注册用户进行查看丶修改丶删除操作,如图3-7,图3-8图3-9所示

在这里插入图片描述

四、项目实现的源码

3.1开机界面:

在这里插入图片描述

3.2登录注册:

3.2.1登录

在这里插入图片描述

3.2.2注册

在这里插入图片描述

3.3个人信息修改:

在这里插入图片描述

3.4重置密码:

在这里插入图片描述

3.5搜索水果:

在这里插入图片描述

3.6购物车详情界面:

在这里插入图片描述

3.7我的购物车及支付界面:

3.7.1加入移除购物车
在这里插入图片描述

3.7.2支付界面
在这里插入图片描述

3.8我的订单:

在这里插入图片描述

3.9水果管理:

3.9.1编辑删除水果
在这里插入图片描述

3.9.2添加水果
在这里插入图片描述

3.10用户管理:

3.10.1修改用户
在这里插入图片描述

3.10.2删除用户

在这里插入图片描述

3.11删除订单:

在这里插入图片描述

五、总结

在我们看来,课程设计是培养学生综合运用知识,解决实际问题的重要环节,是对实际工作能力的具体训练。在计算机应用广泛的今天,我们在实践中遇到了许多问题,通过在线交流和同学的帮助,最终成功完成了课程设计。我们深刻理解了Java面向对象的特性,并领悟到Java与C语言的区别。通过多次动手编写程序,我们发现了学习上的漏洞,并在实践中不断提高自己转化知识的能力。

这次设计让我们深刻认识到理论与实际相结合的重要性。纯粹的理论知识是远远不够的,必须将其与实践结合,得出结论,才能真正为社会服务,提高实际动手和独立思考能力。我们的程序主要通过调用各个包中的方法来实现,这也让我们充分理解了包和类之间的关系。总的来说,课程设计是一次宝贵的经历,让我们在实践中不断成长,为未来的工作和学习积累了宝贵的经验。

六、联系与交流

扣:969060742 源代码 项目报告 ppt

相关文章:

  • 程序员如何高效学习技术?
  • 算法设计与分析 | 矩阵连乘
  • 清除conda和pip缓存的方法
  • STM32 基础知识(探索者开发板)--103讲 通用定时器
  • MACBOOK 通过iterm2连接堡垒机跳转服务器
  • 【用unity实现100个游戏之19】制作一个3D传送门游戏,实现类似鬼打墙,迷宫,镜子,任意门效果
  • json转换(json与对象互转、json与list互转、JSONObject与Map互转)
  • SketchUp各版本安装指南
  • HackTheBox - Medium - Linux - Jupiter
  • Plantuml之对象图语法介绍(十九)
  • LeetCode 268. 丢失的数字
  • 二分查找——OJ题(一)
  • 计算机网络概述(下)——“计算机网络”
  • python之Selenium WebDriver安装与使用
  • vue实现H5拖拽可视化编辑器
  • 【347天】每日项目总结系列085(2018.01.18)
  • 【翻译】Mashape是如何管理15000个API和微服务的(三)
  • 【跃迁之路】【641天】程序员高效学习方法论探索系列(实验阶段398-2018.11.14)...
  • Angular 4.x 动态创建组件
  • Apache Zeppelin在Apache Trafodion上的可视化
  • k个最大的数及变种小结
  • mysql innodb 索引使用指南
  • Netty 框架总结「ChannelHandler 及 EventLoop」
  • 你真的知道 == 和 equals 的区别吗?
  • 云栖大讲堂Java基础入门(三)- 阿里巴巴Java开发手册介绍
  • 在GitHub多个账号上使用不同的SSH的配置方法
  • 阿里云服务器购买完整流程
  • 直播平台建设千万不要忘记流媒体服务器的存在 ...
  • #HarmonyOS:基础语法
  • #常见电池型号介绍 常见电池尺寸是多少【详解】
  • (16)Reactor的测试——响应式Spring的道法术器
  • (java版)排序算法----【冒泡,选择,插入,希尔,快速排序,归并排序,基数排序】超详细~~
  • (js)循环条件满足时终止循环
  • (PyTorch)TCN和RNN/LSTM/GRU结合实现时间序列预测
  • (附源码)springboot 个人网页的网站 毕业设计031623
  • (附源码)springboot金融新闻信息服务系统 毕业设计651450
  • (一)eclipse Dynamic web project 工程目录以及文件路径问题
  • (转)机器学习的数学基础(1)--Dirichlet分布
  • (自适应手机端)响应式新闻博客知识类pbootcms网站模板 自媒体运营博客网站源码下载
  • .apk文件,IIS不支持下载解决
  • .a文件和.so文件
  • .class文件转换.java_从一个class文件深入理解Java字节码结构
  • .NET Framework 的 bug?try-catch-when 中如果 when 语句抛出异常,程序将彻底崩溃
  • .net FrameWork简介,数组,枚举
  • .NET Standard 的管理策略
  • .NET 回调、接口回调、 委托
  • .net 获取url的方法
  • .net 微服务 服务保护 自动重试 Polly
  • .NET导入Excel数据
  • .Net接口调试与案例
  • .stream().map与.stream().flatMap的使用
  • /usr/bin/env: node: No such file or directory
  • @serverendpoint注解_SpringBoot 使用WebSocket打造在线聊天室(基于注解)
  • [android] 天气app布局练习
  • [ASP.NET MVC]如何定制Numeric属性/字段验证消息