当前位置:网站首页>音乐播放器开发实例(可毕设)
音乐播放器开发实例(可毕设)
2022-07-01 14:35:00 【啊渊】
一、开发基础
最近很多大学生都快毕业了在整理毕业论文以及毕业作品,其实在大三的时候就可以开始考虑了并且可以提前和自己的导师进行沟通,让自己的作品直接成为论文选题,在国产操作系统上开发一个简易音乐播放器是一个不错且高大上的题目吧?(我大学的时候就是这样,在大三时我的毕业设计就已经做好了,然后我给老师说修改一下论文的可选题目,老师就帮我添加我的题目为论文选题),看了看粉丝发来的毕业设计题目,开发了一个简单的音乐播放器(国产操作系统)。
大部分的毕业题目通常是XXX管理系统,音乐播放器开发所需要的知识点比XXX管理系统要多一些,他会涉及到网络通信,SSL协议,数据库管理,文件读写,多媒体播放,多线程以及线程池,设计模式等相关知识点,看完这篇文章希望,你能自己动手做一做一个简单音乐播放器。
二、软件设计
软件设计一般都是基于需求进行的,在开发或者设计软件之前一定要先了解需求。尤其是在工作中,需求一般由产品经理下发,需要充分理解需求后才开始开发(磨刀不误砍柴工)。我们公司比较人性的一点在于,并不是产品经理提出的需求就一定是合理,需要经过技术评估,测试评估(从用户、技术、运维等多方面考虑需求的合理性)。如果你在开发的时候一直在吐槽需求的合理性,那么只有两种可能。1、你在公司啥都不是。2、 你是个啥,但是你不了解客户。
2.1 需求
1、 开发一个音乐播放器,能够通过关键词搜索到相关歌名或歌手的歌曲,歌曲在列表中展示,列表一页展示20条,展示不了需要翻页,可以通过输入数字进行页码条状
2、可以下载自己感兴趣的歌曲,在本次或下次打开的时候可以直接播放下载完成的歌曲。
3、 可以控制音乐的播放进度,暂停和播放音乐,点击上一首和下一首歌曲进行切换。
4、 可以控制音乐的音量。
设计界面如下:


2.2 概要设计
框架设计图如下图:(其实大部分)
模块说明
UI模块:包含搜索界面以及播放界面两个部分。
数据库模块:用户存储本地数据库,将其作为缓存数据,防止重复的网络下载等。
网络模块:用于处理网络请求,包括接口访问以及请求。
本地文件:本地文件读写,文件下载完成后保存与本地。进行缓存,当播放时直接读取本地文件进行播放。
三、开发准备
在国产操作系统中开发软件,我推荐使用QT进行开发,当然读者也可以选择自己喜欢的开发库。
3.1 操作系统安装
点击:国产统一操作系统uos怎么安装?uos操作系统安装步骤
3.2 QT安装
点击: 安装QT开发环境
3.3 依赖库安装
依赖openssl,涉及到https网络访问,因此需要安装openssl的开发库文件,安装命令如下:
sudo apt install libssl-dev四、模块详解
4.1 UI界面
UI目录结构

4.2 数据库
数据库表设计如下:
由于小型数据库,因此没有设置索引等。
| 字段 | 类型 | 备注 | 是否必填 |
|---|---|---|---|
| id | int | 自动增加 | 是 |
| name | char(50) | 音乐名称 | 是 |
| path | char(255) | 本地路径 | 是 |
| img | char(255) | 音乐封面图 | 是 |
| url | char(255) | 网络路径 | 是 |
| rid | char(100) | 网络标识ID | 是 |
| remark | char(100) | 备注 | 否 |
| create_time | int | 插入时间戳 | 是 |
4.3 网络
网络模块提供两个重要接口。
2. 文件下载。
五、源代码
边栏推荐
- Use the npoi package of net core 6 C to read excel Pictures in xlsx cells and stored to the specified server
- Provincial election + noi Part VIII fraction theory
- Play with grpc - communication between different programming languages
- Scheme of printing statistical information in log
- Force deduction solution summary 241- design priority for operation expression
- 2022-2-15 learning xiangniuke project - Section 4 business management
- Pat 1121 damn single (25 points) set
- 问题随记 —— Oracle 11g 卸载
- Tdengine connector goes online Google Data Studio app store
- SWT / anr problem - how to open binder trace (bindertraces) when sending anr / SWT
猜你喜欢

sqlilabs less13

MIT团队使用图神经网络,加速无定形聚合物电解质筛选,促进下一代锂电池技术开发

Summary of leetcode's dynamic programming 5

Use the npoi package of net core 6 C to read excel Pictures in xlsx cells and stored to the specified server

C#学习笔记(5)类和继承

WebSocket(简单体验版)

Oracle-数据库对象的使用

Problem note - Oracle 11g uninstall

Play with grpc - communication between different programming languages

Tdengine connector goes online Google Data Studio app store
随机推荐
TDengine 连接器上线 Google Data Studio 应用商店
Research Report on the development trend and competitive strategy of the global pipeline robot inspection camera industry
Research Report on the development trend and competitive strategy of the global facial wrinkle removal and beauty instrument industry
深度合作 | 涛思数据携手长虹佳华为中国区客户提供 TDengine 强大企业级产品与完善服务保障
力扣解法汇总241-为运算表达式设计优先级
Research Report on the development trend and competitive strategy of the global indexable milling cutter industry
phpcms实现订单直接支付宝支付功能
Use the npoi package of net core 6 C to read excel Pictures in xlsx cells and stored to the specified server
券商万1免5证券开户是合理安全的吗,怎么讲
Opencv mat class
使用net core 6 c# 的 NPOI 包,读取excel..xlsx单元格内的图片,并存储到指定服务器
sqlilabs less10
Is the futures company found on Baidu safe? How do futures companies determine the regularity
About the use of HTTP cache validation last modified and Etag
博文推荐 | 深入研究 Pulsar 中的消息分块
sqlilabs less-11~12
对于编程思想和能力有重大提升的书有哪些?
Basic operation of queue (implemented in C language)
En utilisant le paquet npoi de net Core 6 c #, lisez Excel.. Image dans la cellule xlsx et stockée sur le serveur spécifié
【商业终端仿真解决方案】上海道宁为您带来Georgia介绍、试用、教程
