郭卫东 发表于 2024-6-15 00:44:17

Android期末项目:美食点餐APP的设计与实现

目录
1 项目基本信息
1.1 项目名称
1.2 开发运行情况
1.3 利用的焦点类及组件
2 项目需求分析
2.1 APP管理员
2.2 APP用户
3 项目开发过程
3.1 APP功能模块
3.2 数据库设计
3.3详细实现
3.3.1 用户注册与登录
3.3.2 fragment首页界面
3.3.3 fragment不同界面切换功能
3.3.4 fragment点菜界面
3.3.5查看/修改个人信息
3.3.6显示浏览记录
3.3.7搜刮框的实现
3.3.8数据存储
3.3.9对话框的实现
3.3.10重置暗码的实现
4 项目总结及心得

1 项目基本信息

1.1 项目名称

美食点餐APP的设计与实现
1.2 开发运行情况

1. Android 操作系统,不同版本的 Android 操作系统大概对应不同的 SDK 版本。
2. Android SDK:Android SDK 是 Android 软件开发工具包,包罗 Android Studio 集成开发情况(IDE)、各种 Android API、相关工具和平台等。利用 Android SDK 可以进行 Android 应用程序的开发。
3. Java 开发情况:Java 开发情况包罗 JDK 和 Java IDE 工具。在 Android 开发中,需要利用 JDK 运行 Java 代码,而 Java IDE 工具则可以提高开发服从。
4. Android 装备或模拟器:在进行 Android 应用程序开发和测试时,需要准备一台 Android 装备或者利用 Android 模拟器。Android 装备包罗智能手机、平板电脑等多种类型,而 Android 模拟器则可以在电脑上运行 Android 应用程序,方便开发和测试。
1.3 利用的焦点类及组件

1. Activity:Activity 是 Android 应用程序中的基本组件,用于表现用户界面和交互行为。在美食点餐 APP 中,很多页面都是通过继承 Activity 实现的,包罗主界面、菜品分类界面、菜品详情界面、订单界面等。
2. Fragment:Fragment 是 Android 应用程序中的组件,它可以嵌入到 Activity 或其他 Fragment 中,用于构建机动的用户界面。在美食点餐 APP 中,也利用了 Fragment 来创建一些复杂的界面,例如展示不同分类菜品的 Fragment。
3. RecyclerView:RecyclerView 是 Android 应用程序中的组件,用于显示大量数据,并支持固定命目的元素视图。
4. Adapter:数据适配器,用于将数据与视图进行绑定。Adapter 通常被用于将数据源包装成 Android 中的各种视图,例如 ListView、RecyclerView等。
5. LitePal或 SQLite数据库:用于存储应用程序的数据。
6.自界说 ActionBar :通过自界说 ActionBar 可以进行样式界说、布局界说、变乱处置惩罚等等。
7.工具类:StatusBarUtil用于全屏显示,状态栏工具类,SPUtils用于数据持久化工具类。
8.Glide:Android图片加载库,可以或许高效加载当地和远程的图片资源,而且提供了缓存图片、裁剪图片、变换图片等高级功能。Glide可以或许自动处置惩罚多个图片资源的缩放和变换,能通过流式API、机动的设置选项和回调机制,内置了活泼内存管理和生命周期支持,大大淘汰内存问题和开发难度。
9.JSON:JSON用于数据交换。剖析Web Service返回的JSON数据,用于展示和处置惩罚服务器上的数据;将Java对象转换为JSON格式数据,然后将数据通过网络请求发送到服务器; 未来自服务器的JSON数据持久化存储在APP中,以供离线利用;在运行过程中,动态地从当地文件或者网络中加载JSON设置数据,然后应用此设置来驱动程序的行为和设置;利用JSON布局化存储数据,通过SQLite数据库和SharedPreferences等组件来持久化存储和读取数据。
10.Intent:是一种用于在不同组件之间进行通信的机制。可用于请求组件实行操作,或者传输数据。可以用来实行各种操作,包罗启动Activity、启动Service、发送Broadcast以及启动ContentProvider等。
11.JUnit是一个流行的Java测试框架。它提供了一组用于测试Java代码的类和方法。利用JUnit,开发人员可以编写测试用例,测试这些用例以确保代码的正确性和可靠性,可以淘汰在开发过程中出现错误的大概性,它支持自动化测试,并可以或许生成报告以提供反馈和记录测试效果。
2 项目需求分析

2.1 APP管理员

(1)首页模块:用于展示保举菜单信息和类别等信息,并提供操作入口。
(2)订单模块:订单模块包罗查看全部订单、对订单进行管理和编辑等功能。
(3)我的模块:用于展示和修改个人信息,以及重置暗码等账号安全功能。
2.2 APP用户

(1)首页模块:展示 APP 的重要功能,包罗保举菜单信息、类别等信息。
(2)订单模块:实现用户对订单的查看、创建、修改和取消等功能。
(3)我的模块:展示用户的个人信息、账号安全以及浏览记录。个人信息包罗对账号、昵称、年龄和邮箱的修改功能。账号安全可以重置暗码。还可查看汗青浏览记录。
3 项目开发过程

3.1 APP功能模块

APP的重要功能是首页模块展示 APP 中的重要功能和保举菜单等信息,通过分类和搜刮等功能快速定位用户所需要的信息;订单模块实现用户对订单的查看、创建、修改和取消等功能。用户可以浏览菜品,将喜好的菜品进行点餐; 用户管理模块实现用户的修改、查看和删除等功能。用户可以修改个人信息,包罗昵称、年龄和邮箱等,也可以查看和管理本身的订单和收藏。我的模块:展示用户的个人信息、账号安全以及浏览记录。个人信息包罗对账号、昵称、年龄和邮箱的修改功能。账号安全可以重置暗码。还可查看汗青浏览记录。
https://img-blog.csdnimg.cn/5c1c696218f34ad49a3f4b4c6d1d9d71.png
3.2 数据库设计

APP在设计数据库时需要4个表来实现,重要包罗用户表(user)、菜品表(fruit)、 浏览记录表(browse)、订单表(orders)。
用户表(User)主键为id,存储用户的注册信息,其中account、password、email、nickname、age为用户的相关信息;菜品表(Fruit)主键为id,存储菜品信息,其中title、content、img、issuer、date等字段为菜品的相关信息;浏览记录表(Browse)主键为id,存储用户浏览过的菜品,其中account存储用户账号,title存储浏览过的菜品的标题; 订单表(Orders)主键为id,存储用户购买的菜品订单信息,其中account存储用户账号,title存储订单的标题,number存储订单编号,amount存储购买数目,date存储下单时间等信息。
表3-1 用户表(user)
       字段
    数据类型
    主键
    外键
    是否为空
    说明
    id
    integer
    是
    否
    否
    用户id
    account
    text
    否
    是
    否
    账号
    password
    text
    否
    否
    否
    暗码
    email
    text
    否
    否
    否
    邮箱
   
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Android期末项目:美食点餐APP的设计与实现