基于 Kotlin+协程+Ktor+Jetpack + MVVM 实现的手机电商小应用

220 阅读3分钟

一.引言:

PS:潜水很久了,该文章在自己的CSDN也发过,特此说明

这是一个基于 Kotlin、协程、Flow、Retrofit、Jetpack 和 MVVM 架构实现的电商应用。该项目是由本人独立完成,界面UI自己发挥没有固定模式,因为开发群有位大佬(@JokerX)说开源API,有了API有数据,界面的话用之前自己写过就行

二.技术栈

Kotlin: 当前流行的开发语言,不仅适用于 Android 开发,也可用于后端开发。

协程: 以同步的方式编写异步执行代码,简化网络请求和后台任务的处理。

Flow: 更方便地实现网络请求,对比传统方式更加简洁。

Retrofit: 网络请求库,广泛用于 Android 应用中。

Jetpack 组件: 包括 LiveData、Room、ViewModel 等,帮助开发者构建高质量的 Android 应用程序。

DataBinding: 避免繁琐的 findViewById,直接通过 binding 调用控件。

ViewModel: 在 VM 层请求数据,通过 LiveData 观察数据变化。

Coil: Kotlin 新的图片加载框架,无需烦人的 Context 且支持扩展函数随时调用

DialogX :对话框

Toaster:轮子哥的toast

XXPermission: 权限动态请求

SP:古老的数据存储方式,后面换MMKV

三.功能介绍

(1)登录

  1. 密码登录
  2. 短信登录
  3. 注册
  4. 找回密码

(2)主功能

  1. 首页
  2. 分类
  3. 我的

(3)订单

  1. 新建订单
  2. 订单列表
  3. 订单详情
  4. 订单评论
  5. 订单取消
  6. 订单收货
  7. 订单物流
  8. 订单退款
  9. 订单支付

(4)商品

  1. 商品搜索
  2. 商品列表
  3. 商品详情
  4. 商品评论

(5)用户地址

  1. 新建地址
  2. 地址列表
  3. 删除地址

(6)我的

  1. 个人信息
  2. 我的订单
  3. 设置
  4. 我的优惠券
  5. 意见反馈

(7)设置

  1. 多语言切换
  2. 夜间模式
  3. 关于
  4. 主题色
  5. 缓存大小/清缓存

四.功能部分截图

浅色模式

深色部分截图

英语部分截图

项目地址: 点我,可以的话麻烦给个Star,不喜欢不可以还是嘴上留德,用户名可以注册一个,也可用18888888888,密码123456

五.写在最后

因为个人技术太菜了,所以找一个API把app做起来,如果长时间不做会容易忘记怎么写,这个项目虽说是烂大街商城,之前全部用JAVA写的,但是一同打听下来目前Kotlin+MVVM,人家问我MVVM是什么,用没用过感觉严重脱节,此项目之前用MVP后面看了网上例子渐渐演变成MVVM了。整个项目我自己发现不少问题了,

1.如切换多语言是这么回事但是New Task跳转到主页显然不是够好

2主页Banner的图片放的很大,我要是设center的话圆角就异常

3.搜索部分最近搜索没怎么做

4.个人中心的头像,改昵称未做包括手机绑定,修改密码

以上这些,最后Android 开发的道路上不断学习、共同进步