【Android开发】旧书交易系统(OBT),安卓购物软件开发,安卓聊天软件开发,数据库应用,安卓直连mysql数据库

文章目录

    • 一、项目简介
      • 1. 概述
      • 2. 意义
      • 3. 软件卖点
      • 4. 软件创新点
      • 5. 主要功能
    • 二、项目架构
      • 1. 登录注册模块
      • 2. 首页设计模块
      • 3. 图书管理模块
      • 4. 用户管理模块
      • 5. 订单管理模块
    • 三、项目关键设计
      • 1. 数据库设计
      • 2. 关键功能及代码
    • 四、效果图
      • 1. 登录注册
      • 2. MainActivity
      • 3. 其他界面
    • 五、项目源码

一、项目简介

1. 概述

OBT(old book trade)深大旧书交易平台,是专门为深大学生量身定制的二手教科书、二手课外书等书籍的交换平台。同学们用过的教科书、课外书都可以用在本平台上换成需要的教科书或者课外书。旧书交易系统是为师生服务的公益平台项目,旨在实现书籍回收利用、促进学习交流、节省学生开销等宗旨。目前OBT已经完成安卓手机端的开发,未来将对第一版本进行完善,并择机开发ios版本和鸿蒙版本。

2. 意义

OBT旧书交易系统是一个专门为深大学生量身定做的二手书交易平台,其意义总结有以下几点:

1) 实现校内图书的回收利用,为绿色环保、开源节支贡献自己的一己之力;

2) 促进同学之间的交流与联系,切实解决卖书难、买书难的问题。

3) 不经过第三方商家,实现没有中间商赚差价,真正实现压低图书价格,平常在其他旧书店20块钱才买得到的书,在OBT上只需10元就能买到;

4) 探索使用Q点结算,不涉及金钱交易,真正实现图书互换。
经过我们前期的市场调研,目前深大大概有66.3%以上的学生有意愿购入和使用二手书,而他们迫于当前二手书交易的局限,只能从校外的旧书店用较高的价格购买。而OBT的推出,将有望于改变这一现状,实现每年5000册图书的交换,惠及深大3万多人。同时也将助力绿色环境建设,帮助贫困学生以较低价格获得心仪图书。

3. 软件卖点

A.避免资源浪费
很多同学的教材使用完之后,多数选择扔掉或者放着不用,这会造成极大的资源浪费。如果提供OBT这样一个平台,就能让资源循环利用。既能环保,又可以节省同学们的日常开支。

B.使用数据库驱动
鉴于教材的多种多样,我们根据深大的课程体系,按照年级、专业进行分类,并为每一本书贴上标签,分好编 ,使得OBT平台更好地为深大学子服务。

C.不止于购书
OBT平台将提供论坛专区,用于同学们在上面分享读书笔记,看书心得,或者是分享考试复习资料,探讨学习问题等,将会是一个校内的专属学习论坛。

4. 软件创新点

A.交易方式不同
与传统交易平台不同,OBT将采用类似于“物物交换”的交易模式,所有交易不涉及金钱,“卖”出去的书籍将根据定价和新旧程度获得一定数量的Q点,后续可以使用Q点“购入”自己需要的书籍。

B.为深大学子量身定做
将二手书在校内流传,一是避免了中间商赚差价,二是由于课程体系和教师差异不大,教材上的笔记等内容都能很好地被再利用。所购入的二手书也更加适合自己。

C.提供互评机制
与现行单方面的评价不同,OBT平台买卖双方都可对对方做出评价,评价包括打分和文字评论(可配上图片),系统将根据评价生成个人信用分,此外,当进行交易的时候,同学们可以根据评价选择适宜的买方或者卖方。

5. 主要功能

A. 非常细节地复现目前主流App的登录注册功能,带有正则表达式判断、随机图片验证码、以及手机验证码等功能。

B. 模拟淘宝、京东首页设计,具备“轮播广告位”,可以引入广告获取收益,从而维系平台的维护,并且利用优质广告丰富同学们的生活。

C. 和现有平台不同,OBT实现买卖一体化,只需要下载一个App就可以完成买、卖、售后相关操作,操作方便,节约手机内存。

D. 和现有平台不同,OBT不涉及金钱交易,单纯地使用Q点作为物与物交换的媒介,所有交易使用Q点进行结算,能够模拟实现书籍交换的机制。

E. 图书管理方面:实现基本的增删查改、以及根据特定条件、复合条件排序。有购物车功能。

F. 用户管理方面:用户可以上传头像、修改更新个人资料,多用户时还可以实现自由的添加、删除、切换等。

G. 订单管理方面:包含未支付、已支付、待收货、确认收货、评价等阶段属性。并根据图书卖家和买家对这些订单进行标标识,从数据库读取时采用嵌套查询的方式。

二、项目架构

本项目共包含五大模块:登录注册模块、首页设计模块、图书管理模块、用户管理模块、订单管理模块,每个模块之间的简单关系如图所示,整个项目的流程请参见中期 告。接下来,我们将逐一对每个模块的内容和功能进行详细的介绍。

2. 首页设计模块

(1)包含的活动和功能
首页设计模块主要包括两个活动:HomeFm(首页模块)和SearchActivity(搜索活动)。其中每个活动包含的功能如表3所示。

4. 用户管理模块

(1)包含的活动和功能
用户管理模块主要涉及MineFm、LoginActivity、RegisterActivity和ForgetPassWordActivity四个活动。其中每个活动对应的功能如表7所示。

A. 由于手机 、密码、学 这些不需要参与任何的运算,知识一串数字,因此采用varchar存储,这样可以有多少位就存多少位,节省空间。

B. 对于用户头像IMAGE,在java中,我们需要将一张图片先转为bitmap编码,然后再转为byte数组,然后转成String类型,最后使用blob存储。这里不用text,是因为其空间大小不足。

C. 将账 密码和账 信息分开存放,是为了安全起见,因为后面会有很多环节需要访问信息表,如果密码也放在信息里面,就很容易造成信息泄露。

D. 记住密码功能,是将密码保存到手机数据库中(使用SQLite),然后进入登录界面的时候自动填充。
(2)首页设计模块
这个模块主要涉及book表,从book里面选出相应的推荐书籍展示出来,然后点击购买或者加购操作会跳到其他对应的模块进行完成。

A. 关于订单状态的说明:为了更节省空间地表示其状态,这里使用int型,我们规定-1表示未支付状态、1表示已支付未发货状态,2表示已发货未收货状态,3表示已收货状态,4表示订单完成(即卖方收到Q点)。

B. 其余的表在之前也相应介绍过,这里不再重复。注意,这里为了方便,使用账户登录密码作为支付密码。

C. 在用户和订单因为是1对多的关系,所以我们需要将用户的主码(手机 码)作为订单的外码。其余情况也类似。
(4)用户管理模块
这个模块主要涉及用户的一些信息,以及手机自身的SQLite数据库相关表(不同于mysql,不能多台手机共享),其中主要包括user表、userInfo表、userlist表(SQLite)。他们之间存在一些关系,比如user和userInfo是一一对应的,把密码分开其实是为了账 的安全,因为我们在使用app的过程中会经常性的访问数据表,如果密码放在一起,就很有可能会泄露。然后userlist和user是一对多的关系,userlist存放着添加在手机中的用户列表(包括密码),当用户切换时,可以自动取出账 密码去mysql数据库匹配。其数据表和ER图(只画出表之间的关系)如图所示。

A. 为了节省空间,我们使用一个int型数据来记录不同的订单状态,比如使用0表示订单处于刚创建为付款状态,使用1表示订单已付款为发货状态,使用2表示订单已发货未收货状态,以此类推。

B. 另外,在每次订单创建的同时,我们要更新book,将图书设置为已售出,避免重复出售的情况。

2. 关键功能及代码

(1) 连接mysql
因为我们每次使用jdbc连接,都需要创建一个连接器,所以我们这里干脆将其写成一个Helper类,并且在里面放着我们的ip地址和密码,以及数据库的相关信息。

2. MainActivity

3. 其他界面

【Android开发】旧书交易系统(OBT),安卓购物软件开发,安卓聊天软件开发,数据库应用,安卓直连mysql数据库

五、项目源码

完整代码请参加GitHub: https://github.com/JacksonKim-1024/Old-Book-Trade-OBT-

文章知识点与官方知识档案匹配,可进一步学习相关知识MySQL入门技能树使用数据库 创建和删除数据库32792 人正在系统学习中

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年2月22日
下一篇 2022年2月22日

相关推荐