目录

1、项目背景

2、系统介绍

2.1、系统概述

2.2、关键技术

2.3、环境配置

3、系统结构设计

3.1、播放器状态结构图

3.2、登录流程结构图

4、系统模块设计

5、系统总体架构

6、接口描述


很多计算机专业大学生经常和我交流:毕业设计没思路、不会做、论文不会写、太难了......

针对这些问题,决定分享一些软、硬件项目的设计思路和实施方法,希望可以帮助大家,也祝愿各位学子,顺利毕业!

项目专栏:https://blog.csdn.net/m0_38106923/category_11085518.html 


APP体验安装包下载:https://download.csdn.net/download/m0_38106923/19322068

1、项目背景

在移动互联网迅猛发展的大背景下,音频作为伴随性媒体能够最大化地利用用户的日常碎片化时间,较其他听书APP和传统电台,喜马拉雅FM能够脱颖而出,正是因为它精准的目标用户定位,做好目标受众细分,创新节目内容,优化节目形式,满足消费者的需求,并利用网络营销,保存现有优势,快速抢占市场份额。

2、系统介绍

2.1、系统概述

珠穆朗玛FM是一款仿照喜马拉雅(音频分享平台)APP所开发的音频分享电台APP,该应用充分实现喜马拉雅APP的诸多重要功能,如在线专辑展示、电台展示及播放、音频下载、音频录制、音频分享等功能,通过对以上多种功能的设计对互联网中音频的分享与声音服务有了更深层的认识。

2.2、关键技术

本项目采用retrofit+rxjava2+rxandroid+arouter+mvvm+fragmentation实现单activity多fragme组件化架构。

  • Retrofit:Retrofit是现下Android端开发非常流行的一款网络请求框架,它通过动态代理的方式将Java接口翻译成网络请求,通过OkHttp发送请求,并且其具备强大的可扩展性,支持各种数据格式的转换以及RxJava。
  • Rxjava2:一个在Java VM 上使用可观测的序列来组成异步的,基于事件的程序的库。
  • Rxandroid:是RxJava针对Android平台的一个扩展,用于Android开发提供响应式扩展组件快速、易于开发Android应用程序。
  • Arouter:ARouter是阿里开源的一款android路由框架。通过路由进行界面跳转,区别于 Intent的显隐式跳转。在模块化的项目中,友好的解决了因模块互相依赖冲突,而界面互相跳转不了的问题,使用ARouter进行跳转,两个 library互相不依赖,也可以相互跳转。
  • Mvvm:MVVM是Model-View-ViewModel的简写。它本质上就是MVC 的改进版。MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开。它可以取出 Model 的数据同时帮忙处理 View 中由于需要展示内容而涉及的业务逻辑。
  • Fragmentation:Fragmentation非常适合一个Activity管理多个fragment。
  • 组件化:组件化是指解耦复杂系统时将多个功能模块拆分、重组的过程,有多种属性、状态反映其内部特性。

2.3、环境配置

开发环境:Windows 10及以上,Android studio 4.1.2

运行环境:Android 8.0 及以上,JDK 1.8,SDK 21及以上

网络环境:Internet ,Wi-Fi

3、系统结构设计

3.1、播放器状态结构图

3.2、登录流程结构图

4、系统模块设计

此APP共分为5个模块:“我的”模块、首页模块、历史记录模块、播放模块、发现模块。

  • “我的”模块:负责APP的登录注册、登录登出及分享操作;
  • 首页模块:分类展示、音频搜索、音频展示;
  • 历史记录模块:订阅内容与推荐订阅、已下载、播放历史、已购买的音频、喜欢的音频;
  • 播放模块:热门播放的内容展示、专辑展示;
  • 发现模块:付费内容、全面朗读、活动、商城等待开发。

5、系统总体架构

6、接口描述

喜马拉雅开放平台标准授权登录流程采用OAuth2标准授权码(authorization code)模式。授权码模式(authorization code)是功能最完整、流程最严密的授权模式。它的特点就是通过第三方客户端的后台服务器,与我们的oauth2认证服务器进行互动。总体来说先进行用户登录,再进行用户授权。

注意:这种授权模式不会存储任何私钥在客户端(或浏览器端)。

这种授权模式的流程示意图如下所示:

毕业设计So Easy:珠穆朗玛FM音频电台APP相关推荐

  1. 基于Android的看小说APP源码Android本科毕业设计Android小说阅读器、小说APP源码

    基于kotlin + 协程 + MVVM 模式来编写的看小说APP. 完整代码下载地址:基于Android的看小说APP源码Android本科毕业设计Android小说阅读器.小说APP源码 主要框架 ...

  2. 猫耳FM音频转换成MP3格式

    原创文|Space9 猫耳FM音频与普通音频的差异 首先我们发现猫耳FM音频是没有后缀名的音频文件,然后我们通过对比发现猫耳FM音频文件并不是什么加密文件,只是将音频文件.封面图片.弹幕文件合并到了一 ...

  3. 电台app开发,发掘声音经济

    声音相较于其他形式的休闲来说,适用性更强,更具感染力,也更能引起读者的情感共鸣:还可以解放用户的眼睛,适用于任何身体忙碌而头脑空闲的场景,例如:跑步.开车等,用户只需要通过耳朵就能正常的获取信息,尽情 ...

  4. 计算机毕业设计Python+uniapp+安卓电影院售票管理APP论文(WEB+APP+LW)

    计算机毕业设计Python+uniapp+安卓电影院售票管理APP论文(WEB+APP+LW) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行 环境配置: Pychram社区 ...

  5. 企鹅FM音频下载器V1.0 企鹅FM下载器

    之前想下载喜马拉雅上的音频文件,所以临时写了个喜马拉雅音频下载器,后来因为懒,也没再更新了(主要是没啥想下载的了) 现在呢,想下载一些企鹅FM上的音频文件,所以就临时写了这个 由于一些众所周知的原因( ...

  6. 计算机论文视频app,毕业设计论文-爱尚短视频社区APP的设计与实现.doc

    毕业设计论文-爱尚短视频社区APP的设计与实现 爱尚短视频社区APP的设计与实现 Design and Implementation of Love is a Short Video APP 学生姓名 ...

  7. [附源码]计算机毕业设计Python+uniapp戏曲APP7c26n(程序+lw+APP+远程部署)

    [附源码]计算机毕业设计Python+uniapp戏曲APP7c26n(程序+lw+APP+远程部署) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境配置: Python ...

  8. 计算机毕业设计Python+uniapp+安卓智能衣柜管理APP(WEB+APP+LW)

    计算机毕业设计Python+uniapp+安卓智能衣柜管理APP(WEB+APP+LW) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行 环境配置: Pychram社区版+ ...

  9. Python 爬虫:喜马拉雅FM音频(这个还能不载,试了一下其它下载工具都不行了)

    现在是 3:35分,花了整晚时间,写了个 喜马拉雅FM音频 爬虫,顺便熟悉了一下 tkinter GUI 效果图: 已打包的工具可以在下面下载: 链接:https://pan.baidu.com/s/ ...

最新文章

  1. mysql语句大全 新浪博客_MySQL语句入门
  2. Python教程:Python如何实现穷举搜索?
  3. 远程计算机的分辨率调整,手把手教你解决win10系统远程连接设置电脑分辨率的设置方法...
  4. 代码审计_md5()函数
  5. ll文件显示为?????_关于shell编程中的文件测试简单的操作实例
  6. VC设置cookies实现文件刷下载量
  7. MATLAB常见问题:小数保留有效数字位数相关问题/除法结果问题/数据显示格式设置
  8. matlab进行mppt控制仿真,光伏发电系统MPPT控制仿真模型
  9. 如何在CAD中插入一个自定义对象?
  10. gis怎么通过水库划分子流域_分布式水文模型子流域划分方法
  11. nanomsg接口函数以及功能列举大全
  12. 真爱一个人,何妨赌一生
  13. java 短连接转长连接_HTTP的长连接和短连接转换接口(API)
  14. python怎么算反三角函数_反三角函数怎么算
  15. 李彦宏:人工智能的互联网时代已经到来
  16. 计算机硬件及装机视频,超详细图文 视频电脑组装教程,装机之家手把手教你组装一台电脑(9)...
  17. 6月30日 区块链新闻
  18. linux ppp拨号 USB,Linux中实现ppp拨号连接
  19. C语言基础向——二级总结
  20. SSO中的Pattern

热门文章

  1. 3868mysql数据库应用0003_电大3868MySQL数据库应用-0003-参考资料
  2. html如何显示缩略图,前端实现div(DOM)缩略图
  3. 【一笔画益智游戏教程攻略】总共有100关图文教程
  4. chrome浏览器打开网页默认全屏的方法
  5. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: In aggregated query without GROUP
  6. powerpoint预览_如何禁用或删除PowerPoint动画
  7. 免费送书 | 《自动化测试实战宝典:Robot Framework + Python从小工到专家》
  8. 6. 调整图像亮度和对比度(OpenCV基础课程视频学习)
  9. java 密码界面_忘记密码界面
  10. 用友T6客户端 点击系统管理admin.exe,一直无响应