2025年广东省职业院校技能大赛高职组移动应用设计与开发任务书(五)

2025年广东省职业院校技能大赛(高职组)移动应用设计与开发任务书(五)

模块一 产品原型设计

在这里插入图片描述
模块分值:25 分。
本模块重点考查参赛选手收集、分析和归纳客户需求,清晰梳理业务流程,编制规范的需求规格说明书,熟练使用UI设计软件进行产品UI/UE设计,掌握正确的UI设计方案,设计出符合业务逻辑和人体工学的移动应用原型的能力。

在这里插入图片描述
1.根据给定的竞赛任务需求说明,利用“需求规格说明书 (模板)
.docx”和相关工具软件 (如:Visio 等),归纳模块关键需求,绘制对应业务流程图、用例图、时序图,并分析数据需求绘制E-R图,完成“需求规格说明书.docx”文档编写。
2.利用原型设计工具 Adobe XD或者Axure RP 创建项目“产品原型” ,根据给定的竞赛任务需求说明,使用原型设计工具 Adobe XD或者Axure RP和图片处理软件Adobe Photoshop 进行软件原型设计,使之符合UI设计规范,同时实现原型界面之间交互的功能。
(1)软件原型绘制时,界面文件命名规范,各界面尺寸如下表:

在这里插入图片描述
(2)当内容超出高度区域时,设置滚动区域来显示内容。
(3)画板要对齐,界面版式布局合理、美观,内容完整; 同样功能请复用样式,避免一种功能、两种样式的情况。
(4)原型要有交互设计内容, 用户体验良好。检查存在的漏洞,防止出现异常流程和内容状态。
3.将最终完成的“需求规格说明书.docx”文档,设计稿源文件统一保存在“产品原型.rp”或者“产品原型.xd”进行提交。
在这里插入图片描述

参赛选手根据客户提供的任务需求描述,按照模块一的所有任务要求,完成“需求规格说明书.docx”撰写,以及“产品原型.rp”或 “产品原型.xd ”设计。
在这里插入图片描述
中控大屏主屏自动进入 Launcher 桌面
1 、屏幕左侧显示卡片栏,音视频、天气、时间、汽车信息。
(1)音视频卡片,显示正在播放的音视频名称,专辑封面,底部显示, 上一首、暂停、下一首图标,点击对应图标完成操作。
(2)天气卡片,展示当前温度和天气情况和天气城市,点击天气卡片在右侧显示具体天气情况。
(3)时间卡片,展示当前时间、年月日、阴历。
(4)汽车信息卡片, 展示行驶距离、出行次数、车内外温度等信息。
2、屏幕底部显示快捷启动栏。
(1)底部快捷启动栏可放置 5 个 App,其中五个 App 均匀放置,快捷启动栏背景为白色透明圆角。首次进入显示五个“+”图标,点 击 “+”图标弹出 App 选择框,选择 App 可将对应 App 添加到快捷启动栏中。
在这里插入图片描述

1.实现中控大屏仪表屏媒体播放界面和中控大屏主屏的媒体播放 App 界面。
(1)中控大屏仪表屏媒体播放界面,左侧部分显示汽车转数表,右侧部分显示汽车时速表, 转数表和时速表均为圆形, 中间显示媒体播放列表,列表项包括歌曲名和歌手。

(2)中控大屏主屏媒体播放界面左侧显示切换栏,包括音乐、发现、我的列表、详细信息和设置,首次进入左侧为音乐功能, 右侧音乐详细信息。
1)音乐右侧显示音乐列表,列表项包括歌曲名、歌手和歌曲时间。

2)发现右侧上面显示搜索栏,可以通过搜索栏进行歌曲搜索, 输入歌名,点击搜索下面展示歌曲列表项, 列表项包括歌曲名、歌手和歌曲时间。

3)我的列表右侧显示我收藏的音乐列表信息,包括列表项包括歌曲名、歌手和歌曲时间。

4)详细信息右侧显示歌曲名称、歌手名称、歌曲海报、音乐进度条和【收藏】按钮。

5)右侧显示音量调节进度条。
在这里插入图片描述
1.车辆中控大屏开启时,点击中控大屏主屏空调 App 图标,进入空调控制页面。左上角【返回】跳转中控首页。主控屏页面中间位置 显示车内温度。在副屏幕页面显示 OFF 按钮、↑/↓按钮、外循环按钮、内循环按钮,分别代表空调开关、自动空调温度调节按钮以及空气循环方式按钮。
2.点击 OFF 按钮关闭空调返回中控首页。

在这里插入图片描述
1.进入中控大屏,打开天气 App,进入天气 App 主页面,该主页面分为两部分,分别为主屏显示部分和副屏显示部分。
2.主屏显示:
(1)顶部展示:当前城市名称、当前天气(晴天、多云、雨天、雪天等)、最高温度和最低温度。
(2)中部显示:当前湿度, 例如:“湿度:65% ”
(3)底部显示:当前风速, 例如:“风速:5 km/h”
(4)城市列表:展示不同的城市信息,包含城市名称、当日最低温和最高温、当日天气、湿度信息。
3.副屏显示:
(1)顶部显示未来七天的日期。
(2)中部显示:未来七天的最高温度和最低温度, 例如:“15°C - 25 °C”。
(3)底部天气状况: 显示未来几天的天气情况,如“晴天”、 “多云”、“雨天”等,并使用相应的图标来表示天气状况。
在这里插入图片描述

1.在智能充电商用版小程序中,在首页点击底部菜单【订单】,进入订单列表页,页面分为三部分,顶部显示页面标题,标题下方显示 订单状态标签,标签下方显示列表项。
(1)订单状态标签,包括进行中、待支付和已完成。
(2)进行中列表项: 展示订单编号、开始时间、充电站名称、 充电桩名称、充电桩编号、已充电量、充电时长、预计剩余时长和结束充电按钮;点击列表项进入订单详情。
(3)待支付列表项:展示订单编号、开始时间、充电站名称、充电桩名称、充电桩编号、充电量、充电时长、待支付金额和支付按钮;点击列表项进入订单详情。
(4)已完成列表项:展示订单编号、开始时间、充电站名称、 充电桩名称、充电桩编号、充电量、充电时长和支付金额; 点击列表项进入订单详情。
2.进入订单详情页,详情页顶部显示订单标题,下方展示订单状态、订单编号、终端信息、充电信息、费用信息和支付信息;
(1)终端信息:充电站名称、充电桩编号和充电桩名称。
(2)充电信息包括开始充电时间、结束充电时间、已充电量、充电时长、车牌号和车辆型号。
(3)费用信息:订单总额、电费、服务费和实付金额。

(4)支付信息:支付金额、支付方式和支付时间。
在这里插入图片描述

1.在智能充电商用版小程序中,首页可查看附近充电桩列表,列表项 包括充电桩地址、充电桩运行状态、充电桩缩略图、充电桩距离。顶部右上角显示扫一扫充电图标。
2.点击列表项,进入详情界面
(1)顶部显示充电桩图片、工作状态(运行中/空闲/报警)、充电功率、电压。
(2)中间部分显示 20¥按钮、30¥按钮、 50¥按钮、 100¥按钮、全部余额按钮。
(3)底部显示开始充电按钮。
3.点击扫一扫图标,进入扫一扫页面,页面中间部分显示相机识别区、底部显示上传照片按钮。

模块二 移动应用开发

在这里插入图片描述
模块分值:60 分。
本模块重点考查参赛选手的移动应用软件设计、移动应用编码开发的能力,具体包括:
参赛选手按照工作任务书的要求,遵循移动应用开发流程和规范,进行应用架构设计,并利用uni-app框架或Java或Kotlin技术,完成 任务要求的应用模块的代码编写,使用提供的标准化后端服务接口 (RESTful API)进行业务数据获取,完成业务功能开发。
在这里插入图片描述
1.利用移动开发工具 Android Studio 或利用 HbuilderX工具打开对应的初始框架项目,按照任务描述完成APP功能开发。
2.APP界面版式应布局合理、美观,内容完整,用户体验良好。
3.APP需要与服务器数据交互,使用假数据则对应模块分值为0分。
4.APP要有交互设计内容,用户体验良好。
5.将最终项目工程代码放置在“Module_B”文件夹中。需对应用进行打包,将生成的APK/HAP包重命名为对应应用名称的包名并放置到“Module_B”文件夹中。将“Module_B”文件夹打包为压缩文件“ Module_B.zip”。
6.后端服务接口地址:http://192.168.1.100:8080。
7.App UI 尺寸自动适配开发电脑中提供的模拟器 UI(手机和 Pad)、命名规范、应用名称(发布版本)和界面尺寸如下表:
在这里插入图片描述
三、竞赛任务
参赛选手按照模块二的任务要求,完成所有移动应用功能开发任务。
任务 1:车主APP-登录模块(9 分)
【任务说明】
启动车主手机应用,进入手机登录页面,该模块需要实现用户的注册、登录功能。
1.启动应用,进入登录页面。页面上方显示产品Logo,中部显示 标题“账号”、账号输入框、标题“密码”、密码输入框。下方显示、忘记密码按钮、登录按钮和用户注册按钮。

2.用户名和密码输入框、登录按钮均为圆角样式。用户名输入框只能输入大小写字母或数字,其他无法输入,最长输入10位。密码输入框默认密文显示,具有显示与隐藏按钮,点击可以实现显示或隐藏密码功能。

3.点击登录按钮,判断用户名和密码框是否为空,如果为空请提示友好错误;不为空的情况下请求API,用户名和密码正确后跳转到首页,反之显示友好的错误提示。

4.通过点击登录页面的【用户注册】按钮进入到注册页面。页面中输入项包含账号、姓名、手机号、邮箱、密码和确认密码;每个输入框都具有左侧图标和圆角。

5.各输入项不能为空,且满足如下校验规则:账号只能输入字母或数字;姓名只能输入字母或数字,输入不能超过12位;手机号必须合法(13/15/17/18 开头的11 位手机号); 邮箱必须合法( 例如 xx@xx.xx);密码为6-10位,且只能输入字母或数字;确认密码输入内容需要和密码一致。

6.点击【提交】按钮后判断输入项是否满足要求,不满足提示对应错误;输入项满足后请求API,注册成功后跳转到登录页面,注册失败后根据API返回的失败内容进行友好提示。

7.点击左上角返回按钮,返回到登录页。
任务 2:车主App-汽车维保(11 分)
【任务说明】
进入车主手机 App 首页,显示车主服务模块,车主服务模块分为维保预约、维保历史。
点击车主服务模块中的【维保预约】进入维保预约页面,页面顶部显示标题栏,标题栏右侧显示【维保历史】按钮,页面内容部分显示预约表单,页面底部显示【预约提交】按钮,预约表单包括维保类型、城市、维保服务站(4S 店)、预约日期、预约时间、维保车辆、车牌号码、联系人姓名、联系电话,维保类型包括常规保养和车辆维修,默认为常规保养。

(1)选择维保类型为车辆维修时,预约表单下方显示维修方案和电子签名区域, 维修方案包括更换零件、维修类目、单项价格、维修总价、维修周期,在签名区域手写签名确认后方可提交。

(2)完成预约表单信息后,点击【预约提交】按钮进行提交, 提交成功后进入支付页面,支付成功后返回首页,可在维保历史页面中查看预约记录。
点击首页车主服务模块中的【维保历史】进入维保历史页面,页 面顶部显示标题栏,标题栏下方显示维保历史记录条数和历史列表,维保历史列表项包括工单号、维保类型、维保日期、送修时间、维保费用和维保状态。

任务 3:中控大屏-媒体播放(12 分)
【任务说明】
中控大屏开启时,在中控大屏仪表屏中选择媒体进行切换和播放。
1.中控大屏仪表屏幕中间显示媒体组件,组件内上方显示正在播放的媒体信息例如“歌曲名称”“音视频名称”信息栏“音量显示”。 信息栏下方显示播放控制按钮,“播放/暂停”“上一曲下一曲” “音量滑块”“静音”。在操控设备中点击“播放/暂停”,仪表屏中的按钮随之切换“播放/暂停”状态;点击操控设备中的“上一曲下一曲”按钮,仪表屏可切换正在播放媒体信息;点击操控设备中的 “静音”按钮,仪表屏幕“音量显示”调节到静音模式。

2.中控大屏主屏中显示当前播放的歌曲名称、歌曲进度和歌词,显示“播放/暂停” “上一曲下一曲” “音量滑块” “静音”按钮,点击各自按钮可对当前播放的歌曲进行操作。中控大屏的主屏和仪表屏,同步播放同一首歌曲,同步音量。

任务 4:中控大屏-应用市场(12 分)
【任务说明】
1.在中控大屏主屏中点击应用市场,进入应用市场页面,页面包括推荐 App 内容,搜索菜单、更新菜单。
2.App 推荐卡片,卡片内容为 App 图标、背景、名称、介绍、
【下载】按钮, 点击【下载】按钮进行 App 下载安装。卡片下方展 示专题列表,专题列表为本周热门 App 列表,列表包括 App 名称、 App 缩略图、下载次数、【下载】按钮,点击【下载】按钮可下载对应App(管理服务端可进行 App 上传,推荐状态的修改等功能)。
3.点击搜索菜单,跳转至搜索页面,在搜索页面输入应用名称,点击【搜索】按钮可模糊查询应用列表。

4.点击更新菜单, 展示所有可更新的 App 列表,点击更新按钮可进行更新。

在这里插入图片描述
【任务说明】
1.进入智能充电家用版 App 首页, 页面分为四部分,顶部显示 首页标签,标签下方显示用户车辆信息,车辆信息下方显示功能按钮,底部显示菜单并位置固定。
(1)用户车辆信息:包括车辆模型、车牌、品牌、型号和剩余里程。
(2)车辆图片:查看车辆的外观。
(3)中部功能按钮:包括添加充电桩、添加车辆和一键充电。
(4)底部菜单:包括首页、订单和个人中心。点击菜单,进入对应的页面。

2.在车辆信息和功能按钮之间显示车辆充电状态(待充电)、充电桩名称、电池电量和开始充电按钮。

3.点击开始充电按钮,启动充电,车辆充电状态变为充电中, 显示电池充电动态进度(动画效果展示)、电池电量、充电功率、充电电量、预计剩余时间和停止充电按钮。

在这里插入图片描述
【任务说明】

1.进入智能充电商用版小程序,在首页点击底部菜单【订单】,进入订单列表页,页面分为三部分,顶部显示页面标题,标题下方显示订单状态标签,标签下方显示列表项。
(1)订单状态标签,包括进行中、待支付和已完成。
(2)进行中列表项: 展示订单编号、开始时间、充电站名称、充电桩名称、充电桩编号、已充电量、充电时长、预计剩余时长和结 束充电按钮;点击列表项进入订单详情。
(3)待支付列表项: 展示订单编号、开始时间、充电站名称、充电桩名称、充电桩编号、充电量、充电时长、待支付金额和支付按 钮;点击列表项进入订单详情。
(4)已完成列表项: 展示订单编号、开始时间、充电站名称、充电桩名称、充电桩编号、充电量、充电时长和支付金额; 点击列 表项进入订单详情。
2.进入订单详情页,详情页顶部显示订单标题,下方展示订单状态、订单编号、终端信息、充电信息、费用信息和支付信息;
(1)终端信息:充电站名称、充电桩编号和充电桩名称。
(2)充电信息包括开始充电时间、结束充电时间、已充电量、充电时长、车牌号和车辆型号。
(3)费用信息:订单总额、电费、服务费和实付金额。
支付信息:支付金额、支付方式和支付时间。

模块三 应用部署测试

在这里插入图片描述
模块分值:15 分
本模块重点考查选手应用系统测试能力,基于移动跨平台应用开发生态系统,围绕车主 App、中控大屏 App、智能充电家用版 App 和智能充电商用版小程序,进行应用系统部署、测试用例编写、功能测试、API自动化测试以及文档编写。
在这里插入图片描述
1.部署移动跨平台应用开发生态系统待测应用。
2.根据“移动跨平台应用开发生态系统车主手机功能范围.pdf”,撰写测试用例文档,并进行功能测试,将功能缺陷提交缺陷文档中。
3.利用Postman 工具进行API 接口测试,并导出Api.json 脚本。
4.根据“移动跨平台应用开发生态系统车主手机功能范围.pdf”,撰写产品操作手册文档。
5.竞赛结束前,选手上述成果物测试用例.xlsx、缺陷分析.docx、 Api.json、产品操作手册.docx 添加到“应用部署测试.zip”压缩包内,并提交压缩包文件。
在这里插入图片描述
在这里插入图片描述
根据“移动跨平台应用开发生态系统车主手机功能范围.pdf”中描述的功能范围,撰写测试用例文档(具体测试用例数量如表 1 所示,测试用例格式如表 2 所示)并进行全范围功能测查,找出特定的 10 个Bug,根据找出的Bug 进行缺陷分析,分析 Bug 出现的原因,将 Bug 填写到“缺陷分析.docx”中,缺陷分析填写样例如表 3 所示。

表 1 功能模块说明
序号功能模块说明
1车主手机功能范围-功能 1本功能模块编写至少10 个测试用例
2车主手机功能范围-功能 2本功能模块编写至少10 个测试用例
3车主手机功能范围-功能 3本功能模块编写至少10 个测试用例
4…………
表 2 功能测试填写样例表

在这里插入图片描述

表 3 缺陷分析填写样例表
缺陷编号001
缺陷简要描述点击车主服务模块中的【维保预约】进入维保预约页面,无响应。
缺陷重现步骤1. 用户成功登录系统;2. 进入车主 App 首页;3. 点击首页【维保预约】按钮。
涉及功能模块车主 App
缺陷分析原因1. 【维保预约】功能未开发;2. 【维保预约】按钮失效。
缺陷图示注:裁剪截图,每页放置两个缺陷内容

在这里插入图片描述
利用Postman 测试工具,根据移动跨平台应用开发生态系统API 文档,进行自动化API 接口测试,并导出Api.json 文件。
在这里插入图片描述
对移动跨平台应用开发生态系统车主手机功能进行梳理分析,利用产品操作手册.docx 文件编写产品操作手册,具体规范如下描述:
第一部分:编写待测App 的产品定位中心叙述,罗列核心功能点名称与运行待测App 的运行基础环境。
第二部分:编写上述功能点的指导说明,准确叙述用户操作行为,将功能变得具体化、形象化,便于读者理解具体内容,增强说服力。
第三部分:编写需要指出使用待测App 的常规注意事项进行说明,提示用户规避使用不规范操作等。

需要竞赛资料答案完成参阅可联系我!!吸收即拿奖

<think>好的,我现在需要帮助用户了解或实现得物签名的相关技术,特别是签名算法的实现方式。首先,我需要收集已有的信息。根据用户提供的引用,特别是引用[4]和[5],得物的签名算法可能涉及逆向工程分析,使用了JavaScript中的XMLHttpRequest重写来拦截请求,并在请求中包含特定的sign参数。这可能意味着签名生成是在客户端进行的,通常在前端JavaScript代码中完成。 接下来,我应该考虑常见的签名生成方法。常见的Web应用签名算法通常使用HMAC、AES、RSA或自定义的哈希合。引用[1]提到了RSA算法,但得物的签名可能更倾向于使用HMAC-SHA256之类的哈希算法,结合时间戳、随机数和请求参数进行签名,以防止篡改和重放攻击。 用户可能需要具体的步骤,比如逆向分析得物的JavaScript代码,找到生成sign的函数,提取关键参数和加密逻辑。引用[5]中的代码片段展示了如何重写XMLHttpRequest的open方法来拦截请求,这可能用于调试和定位签名生成的代码位置。 此外,引用[4]提到使用Python进行算法还原,所以可能需要在Python中复现JavaScript的签名生成逻辑。这通常涉及分析请求参数如何排序、拼接,以及如何密钥结合进行哈希或加密。需要注意反爬机制,如obfuscation(代码混淆)或动态密钥,这可能需要使用AST(抽象语法树)解析或动态执行来还原算法。 用户可能还需要了解如何应对反调试措施,比如在Chrome开发者工具中使用断点调试,或者使用工具如Frida进行Hook。同时,引用[3]和[4]强调了法律和合规问题,确保研究仅用于学习目的,不用于非法用途。 最后,应该提醒用户注意法律风险,遵循网站的使用条款,避免侵犯知识产权或违反计算机安全法律。总结起来,实现得物签名需要逆向工程分析前端代码,提取关键算法,处理可能的混淆和反调试,最后用目标语言如Python复现算法。</think>### 得物签名算法实现方式分析 得物签名算法主要用于接口请求的身份验证和防篡改保护,常见实现方式涉及以下技术点: #### 1. **签名参数成** 签名通常由以下参数动态生成: - 请求参数(经排序、过滤空值后拼接) - 时间戳(如:$timestamp=1620000000$) - 随机数(如:$nonce=5a8s3d$) - 设备指纹(如:$device\_id=abcdef$) - 应用密钥(加密盐值,可能动态获取)[^4] 示例参数拼接逻辑: $$ \text{sign\_str} = \text{path} + \text{sorted\_params} + \text{timestamp} + \text{nonce} $$ #### 2. **加密算法类型** 根据逆向分析,得物可能采用以下合: - **HMAC-SHA256**:对拼接字符串进行哈希运算 - **AES/Base64编码**:对结果二次处理 - **自定义位移/异或操作**:增加逆向难度[^5] #### 3. **JavaScript代码混淆** 关键函数可能被混淆,例如: ```javascript function _0x12ab5(a, b) { return a ^ b << 3; } // 需要AST解析还原控制流 ``` #### 4. **Python算法还原示例** ```python import hmac import hashlib def generate_sign(params, secret_key): # 1. 参数排序并拼接 sorted_str = '&'.join([f"{k}={v}" for k,v in sorted(params.items())]) # 2. HMAC-SHA256加密 sign = hmac.new(secret_key.encode(), sorted_str.encode(), hashlib.sha256).hexdigest() # 3. 自定义处理(示例) return sign.upper() + str(int(time.time())) ``` #### 5. **反爬对抗措施** - 动态密钥:通过接口定期更新加密盐值 - 环境检测:验证是否在真机环境运行 - 请求频率限制:异常高频触发验证码[^5]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

旺仔Sec

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值