基于Android的健身计划管理应用

一、应用概述

该应用充分利用Android平台的强大功能和便捷性,为用户提供个性化的健身计划制定、跟踪、调整以及健身知识分享等一站式服务。通过这款应用,用户可以轻松规划自己的健身之路,记录每一次的训练成果,并不断优化自己的健身计划,从而达成健身目标。

二、核心功能

个性化健身计划制定:
用户可以根据自己的健身目标(如减脂、增肌、塑形等)和身体状况(如年龄、性别、身高、体重等),在应用中生成个性化的健身计划。
应用提供多种训练模式供用户选择,包括力量训练、有氧运动、瑜伽、拉伸等,满足不同用户的需求。
训练跟踪与记录:
用户可以在应用中记录每次的训练数据,如训练时长、训练强度、消耗的卡路里等。
应用会自动生成训练日志,帮助用户直观地了解自己的训练进度和成果。
计划调整与优化:
根据用户的训练数据和反馈,应用会智能推荐训练计划的调整方案,帮助用户更高效地达成目标。
用户也可以手动调整训练计划,如增加训练强度、更换训练动作等。
健身知识分享:
应用设有健身知识板块,提供丰富的健身文章、视频教程和营养建议,帮助用户更全面地了解健身知识。
用户还可以在社区中与其他健身爱好者交流心得,分享训练成果。
提醒与激励功能:
应用提供训练提醒功能,确保用户不会错过任何一次训练。
用户还可以设置目标达成奖励,激励自己坚持训练。

部分代码

package com.example.controller;

import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import com.example.common.Result;
import com.example.common.ResultCode;
import com.example.entity.Caiwu;
import com.example.exception.CustomException;
import com.example.service.CaiwuService;
import com.example.utils.MapWrapperUtils;
import com.example.utils.jwt.JwtUtil;
import com.example.vo.CaiwuVo;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@RestController
@RequestMapping(value = "/caiwu")
public class CaiwuController {

    @Resource
    private CaiwuService caiwuService;

    @PostMapping
    public Result<Caiwu> add(@RequestBody CaiwuVo caiwu) {
        caiwuService.add(caiwu);
           return Result.success(caiwu);
    }
	
	

    @PostMapping("/deleteList")
    public Result<Caiwu> deleteList(@RequestBody CaiwuVo caiwu) {
        caiwuService.deleteList(caiwu.getList());
        return Result.success();
    }

    @DeleteMapping("/{id}")
    public Result delete(@PathVariable Long id) {
        caiwuService.delete(id);
        return Result.success();
    }

    @PutMapping
    public Result update(@RequestBody CaiwuVo caiwu) {
        caiwuService.update(caiwu);
        return Result.success();
    }

    @GetMapping("/{id}")
    public Result<Caiwu> detail(@PathVariable Integer id) {
        Caiwu caiwu = caiwuService.findById(id);
        return Result.success(caiwu);
    }

    @GetMapping
    public Result<List<Caiwu>> all() {
        return Result.success(caiwuService.list());
    }

    @PostMapping("/page")
    public Result<CaiwuVo> page(@RequestBody CaiwuVo caiwuVo) {
        return Result.success(caiwuService.findPage(caiwuVo));
    }
	    @PostMapping("/login")
    public Result login(@RequestBody Caiwu caiwu, HttpServletRequest request) {
        if (StrUtil.isBlank(caiwu.getZhanghao()) || StrUtil.isBlank(caiwu.getMima())) {
            throw new CustomException(ResultCode.PARAM_LOST_ERROR);
        }
        Caiwu login = caiwuService.login(caiwu);
//        if(!login.getStatus()){
//            return Result.error("1001","状态限制,无法登录系统");
//        }
        if(login != null) {
            HashMap hashMap = new HashMap();
            hashMap.put("user", login);
            Map<String, Object> map = MapWrapperUtils.builder(MapWrapperUtils.KEY_USER_ID,caiwu.getId());
            String token = JwtUtil.creatToken(map);
            hashMap.put("token", token);
            return Result.success(hashMap);
        }else {
            return Result.error();
        }
    }
    @PutMapping("/updatePassword")
    public Result updatePassword(@RequestBody Caiwu info, HttpServletRequest request) {
        Caiwu caiwu = caiwuService.findById(info.getId());
        String oldPassword = SecureUtil.md5(info.getMima());
        if (!oldPassword.equals(caiwu.getMima())) {
            return Result.error(ResultCode.PARAM_PASSWORD_ERROR.code, ResultCode.PARAM_PASSWORD_ERROR.msg);
        }
        info.setMima(SecureUtil.md5(info.getNewPassword()));
        Caiwu caiwu1 = new Caiwu();
        BeanUtils.copyProperties(info, caiwu1);
        caiwuService.update(caiwu1);
        return Result.success();
    }
}

效果图

请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

三、技术实现

后端技术:采用Java或Kotlin等语言开发后端服务,处理用户数据存储、训练计划生成等复杂业务逻辑。
前端技术:基于Android平台开发前端界面,采用Material Design设计语言,确保界面美观、操作流畅。
数据库技术:使用SQLite或云端数据库存储用户数据和训练计划,确保数据的安全性和可靠性。
通信技术:通过HTTP/HTTPS协议实现前后端数据的传输和交互。

四、应用场景

这款应用适用于各种健身场景,无论是家庭健身、健身房锻炼还是户外跑步等,用户都可以利用这款应用来规划和管理自己的健身计划。此外,这款应用还特别适合那些需要长期坚持健身的用户,通过智能化的计划调整和优化功能,帮助他们更高效地达成健身目标。

五、优势与特点

个性化定制:根据用户的身体状况和健身目标生成个性化的健身计划。
全面跟踪记录:记录用户的训练数据,生成训练日志,帮助用户了解自己的训练进度。
智能调整优化:根据用户的训练数据和反馈智能推荐训练计划的调整方案。
丰富知识分享:提供丰富的健身知识和社区交流功能,帮助用户更全面地了解健身知识。
便捷易用:基于Android平台开发,界面美观、操作流畅,方便用户随时随地使用。
综上所述,基于Android的健身计划管理应用是一款功能全面、个性化定制、智能调整优化的健身管理工具,它能够帮助用户更高效地达成健身目标,享受健康的生活方式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值