Git Product home page Git Product logo

dsomusic's Introduction

Dso Music

Kotlin 开发的美观的安卓音乐软件。

Jetpack Compose 部分重写中

ReadMe Card

作者邮箱: [email protected]

警告

❗🙃不建议用此项目学习,它是屎山

❗🤡此为作者初学安卓的产物,当时什么都不太会

祝你好运~~~

声明及协议

源码仅供学习,请勿传播软件安装包。开源链接、源码、介绍及应用安装包未经开发者允许不接受他人的任何转发(发布到其他应用、推广网站、公众号、博客等)

Dso Music 软件内不提供歌曲下载,只提供在线音乐试听,请支持正版音乐。

基于本开源项目的其他开发者项目、软件所引发的问题,依据 GPL 3 免责协议本开发者不负责任。

GNU 通用公共许可协议 GNU GENERAL PUBLIC LICENSE Version 3

详见 LICENSE

作者的其他软件

椒盐音乐

漂亮美观的本地音乐播放器,仓库地址(非开源)https://github.com/Moriafly/SaltPlayerSource

酷安下载

音源

网易云音乐来源(但不限于):https://github.com/Binaryify/NeteaseCloudMusicApi

QQ 音乐来源:自己搞的 : )

名称 VIP 音乐 128k 192k 320k 无损
网易云 少数✔
QQ 少数✔

以前版本

pic1

pic2

博客地址

https://blog.csdn.net/Moriafly/article/details/109708728

本项目维护

感谢

lbccccc

olbb

等大佬的支持

开发进度

本项目

  • UID 登录
  • 本地音乐
  • 播放历史
  • 网络歌词适配
  • 收藏歌曲到本地我喜欢

基于网易云 API

  • 私人 FM
  • 所有榜单
  • 所有榜单内容摘要
  • 获取每日推荐歌曲
  • 新歌速递
  • 热搜列表(详细)
  • 通知 - 私信
  • 喜欢音乐
  • 默认搜索关键词
  • banner
  • 手机登录
  • 发送/删除评论
  • 获取用户信息
  • 搜索
  • 获取歌单详情
  • 获取音乐 url
  • 获取歌词
  • 歌曲评论
  • 获得歌曲详情
  • 邮箱登录
  • 刷新登录
  • 发送验证码
  • 验证验证码
  • 注册(修改密码)
  • 检测手机号码是否已注册
  • 初始化昵称
  • 更换绑定手机
  • 退出登录
  • 登录状态
  • 获取账号信息
  • 获取用户信息 , 歌单,收藏,mv, dj 数量
  • 获取用户等级信息
  • 获取用户绑定信息
  • 用户绑定手机
  • 更新用户信息
  • 更新头像
  • 国家编码列表
  • 获取用户歌单
  • 更新歌单
  • 更新歌单描述
  • 更新歌单名
  • 更新歌单列表
  • 歌单封面上传
  • 调整歌单顺序
  • 调整歌曲顺序
  • 获取用户电台
  • 获取用户关注列表
  • 获取用户粉丝列表
  • 获取用户动态
  • 转发用户动态
  • 删除用户动态
  • 分享歌曲、歌单、mv、电台、电台节目到动态
  • 获取动态评论
  • 关注/取消关注用户
  • 获取用户播放记录
  • 获取热门话题
  • 心动模式/智能播放
  • 获取动态消息
  • 歌手分类列表
  • 收藏/取消收藏歌手
  • 歌手热门50首歌曲
  • 歌手全部歌曲
  • 收藏的歌手列表
  • 收藏的专栏
  • 收藏视频
  • 收藏/取消收藏 MV
  • 收藏的 MV 列表
  • 歌单分类
  • 热门歌单分类
  • 歌单(网友精选碟)
  • 精品歌单标签列表
  • 精品歌单
  • 相关歌单推荐
  • 音乐是否可用
  • 热搜列表(简略)
  • 搜索建议
  • 搜索多重匹配
  • 新建歌单
  • 删除歌单
  • 收藏/取消收藏歌单
  • 歌单收藏者
  • 对歌单添加或删除歌曲
  • 收藏视频到视频歌单
  • 删除视频歌单里的视频
  • 最近播放的视频
  • 首页-发现
  • 首页-发现-圆形图标入口列表
  • 楼层评论
  • 专辑评论
  • 歌单评论
  • mv 评论
  • 电台节目评论
  • 视频评论
  • 热门评论
  • 新版评论接口
  • 给评论点赞
  • 抱一抱评论
  • 评论抱一抱列表
  • 资源点赞(MV、电台、视频)
  • 获取点赞过的视频
  • 获取专辑内容
  • 专辑动态信息
  • 收藏/取消收藏专辑
  • 获取已收藏专辑列表
  • 获取歌手单曲
  • 获取歌手 mv
  • 获取歌手专辑
  • 获取歌手描述
  • 获取歌手详情
  • 获取相似歌手
  • 获取相似 歌单
  • 相似 mv
  • 获取相似音乐
  • 获取最近 5 个听了这首歌的用户
  • 获取每日推荐歌单
  • 获取历史日推可用日期列表
  • 获取历史日推详情数据
  • 签到
  • 喜欢音乐列表
  • 垃圾桶
  • 新碟上架
  • 全部新碟
  • 最新专辑
  • 听歌打卡
  • 热门歌手
  • 全部 mv
  • 最新 mv
  • 网易出品 mv
  • 推荐 mv
  • 推荐新音乐
  • 推荐电台
  • 推荐节目
  • 独家放送(入口列表)
  • 独家放送列表
  • mv 排行
  • 获取 mv 数据
  • 获取 mv 点赞转发评论数数据
  • mv 地址
  • 获取视频标签列表
  • 获取视频标签/分类下的视频
  • 获取全部视频列表
  • 获取推荐视频
  • 相关视频
  • 视频详情
  • 获取视频点赞转发评论数数据
  • 获取视频播放地址
  • 歌手榜
  • 云盘
  • 云盘数据详情
  • 云盘歌曲删除
  • 电台 banner
  • 电台个性推荐
  • 电台订阅者列表
  • 用户电台
  • 热门电台
  • 电台 - 界面榜
  • 电台 - 付费精品
  • 电台 - 24 小时节目榜
  • 电台 - 24 小时主播榜
  • 电台 - 主播新人榜
  • 电台 - 最热主播榜
  • 电台 - 新晋电台榜/热门电台榜
  • 电台 - 类别热门电台
  • 电台 - 推荐
  • 电台 - 分类
  • 电台 - 分类推荐
  • 电台 - 订阅
  • 电台的订阅列表
  • 电台 - 付费精选
  • 电台 - 推荐类型
  • 电台 - 今日优选
  • 电台- 详情
  • 电台 - 节目
  • 电台 - 节目详情
  • 发送私信
  • 发送私信音乐
  • 发送私信(带歌单)
  • 最近联系人
  • 私信内容
  • 通知 - 评论
  • 通知 - @我
  • 通知 - 通知
  • 设置
  • 数组专辑 - 新碟上架
  • 数字专辑&数字单曲-榜单
  • 数字专辑 - 语种风格馆
  • 数字专辑详情
  • 我的数字专辑
  • 购买数字专辑
  • 音乐日历
  • 云贝
  • 云贝今日签到信息
  • 云贝签到
  • 云贝账户信息
  • 云贝所有任务
  • 云贝 todo 任务
  • 云贝完成任务
  • 云贝收入
  • 云贝支出
  • 关注歌手新 MV

QQ 音乐 API

  • 搜索音乐
  • 音乐 url
  • 歌词

项目构建

compileSdkVersion 30

Android Gradle Plugin Version 4.1.2

Gradle Version 6.8.3

dsomusic's People

Contributors

agoines avatar can-dy-jack avatar chen310 avatar lbccccc avatar moriafly avatar olbb avatar yhsj0919 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dsomusic's Issues

本地音频的浏览方式

现在只能是列出所有“包含音频文件的”文件夹,但是看不到该文件夹的上一级,希望可以有一个像文件管理器那样的树形浏览方式

访问某些用户主页的时候会崩溃

Screenshot_20210205-231723_Smart Manager(崩太快了只能截个崩溃记录的屏)
崩溃时访问的用户名:不怕周树人
SmartSelect_20210205-233027_Dso Music
怀疑是不是这个用户头像或者主页背景体积太大溢出了

部分全面屏手机底栏尺寸异常

在通过小米MIX2和一加8T使用Dos music时发现底部播放控制栏的尺寸异常偏高,其中要属MIX2最为严重,附图如下,第一张是MIX2,第二张是一加8T。
16122335743973838896051864010805
1612233589348406272746682917414

播放器可以拉取歌单但无法播放

测试环境为安卓车机(安卓7.0)
安装后可以正常登陆和下拉网易云歌单,但是无法播放任何歌曲,开始播放后提示“歌曲暂时无法播放”同时跳到下一首,然后开始全歌单歌名跑马灯(x)

华为手机音频音高设置闪退

等待解决

--logversion:utracea
Process Name: 'com.dirror.music'
Thread Name: 'main'
Back traces starts.
java.lang.NoSuchMethodError: No virtual method getPlaybackParams()Landroid/media/PlaybackParams; in class Landroid/media/MediaPlayer; or its super classes (declaration of 'android.media.MediaPlayer' appears in /system/framework/framework.jar)
at com.dirror.music.service.MusicService$MusicBinder.setPlaybackParams(MusicService.kt:552)
at com.dirror.music.service.MusicService$MusicBinder.onPrepared(MusicService.kt:319)
at android.media.MediaPlayer$EventHandler.handleMessage(MediaPlayer.java:2533)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5307)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
Back traces ends.

https://blog.csdn.net/xiaxiangnanxp1989/article/details/105660871

新建歌单

大佬可以加一个新建歌单的功能吗,我之前看你的代码的时候看到了新建歌单的后台逻辑好像还没写完,感觉这个功能比较实用一点。还有从歌单长按歌曲出现批量按钮批量添加,一个一个的歌曲添加是不是有点太麻烦了,大佬可以看一下吗,我要是会安卓的话就可以和你一块写了,大学学的全忘了=.=||

Accessibility 支持

描述

开发者您好!
我是一位视障用户,平时依靠屏幕阅读器使用电脑 / 手机,在 Android 端的屏幕阅读器是 Google 的辅助功能服务——Talkback,该服务会将屏幕上的文字信息以 TTS 形式反馈给用户。
在 使用 Dso Music 过程中发现了几个 Accessibility 相关的障碍,主要表现为 Talkback 无法读出按钮的真实用途(如 播放 / 暂停、上/下一首等),而是只能朗读"未加标签的按钮",这是因为在开发过程中没有为按钮添加相关的无障碍属性所致。

如果使用 ImageView、ImageButton、CheckBox 或其他以图形方式传达信息的 View,请使用 android:contentDescription 属性为该 View 提供内容标签。(不需要加上元素类型或状态)。
内容标签有时取决于仅在运行时呈现的信息;View 的含义也可能随时间不断变化。例如,在音乐播放期间时,播放按钮可能变为暂停按钮。在这种情况下,请使用 View#setContentDescription(CharSequence contentDescription) 适时更新内容标签。
对于 EditText 或可编辑的 TextView,请使用 android:hint 属性指明文本字段的用途。不能够将 android:contentDescription 用作可编辑 View 的内容标签。

在 Dso Music 中播放器控制区域的上一首、下一首、播放 / 暂停、播放列表,模式切换等按钮缺少文本标签; 右上角搜索按钮、搜索框旁边的清除输入按钮也缺少文本标签,希望作者能够优化。

一些可能有用的参考链接

  1. 内容标签 - Android 无障碍功能帮助
  2. 盲人怎么用手机?如何打造视障友善的app?
  3. Accessibility 开发文档

你好

作者可以加个联系方式吗,想请教一些问题

播放器问题

  • 检测更新错误(Github下载的2.7.0,第一次打开就弹窗更新2.7.0)
  • 换曲仍保留上一首歌曲封面
  • 单曲错误(灰色歌曲)换曲后正常曲目也会提示错误,重复换曲重复报错无法播放(即使是正常的歌曲)
  • 多歌手名仅显示头一个歌手信息

闪退

打开时就闪退...

设备情况:Exynos 7420处理器,运行Android 7.0

测试了一下只有v2.7.1版和以前的版本可以正常使用,试了“海上明月共潮生修复版”依然闪退,望修复!

优化播放错误提示

在使用非**大陆ip播放网易云音乐时,部分歌曲会因为 「地区受限」 不能正常播放。

具体表现为 :可以拉取歌单,但是不断提示「播放错误(1,-2147483648),开始播放下一首」,并像跑马灯一样循环歌单,直到出现可以在境外播放的歌曲为止。

因为实际感受是「部分歌曲能放部分不能放」,数个月来我一直以为是软件bug。直到刚刚才意识到是ip问题。

所以,希望大佬能优化此错误提示,提醒用户更换网络环境,以免出现误解。

网易云灰色歌曲

希望灰色歌曲(提示网易云暂无版权的音乐)可以匹配云盘,或者自动在酷我/QQ里面匹配音乐(不知难度是否很大)
感激作者的项目!

收藏到歌单失败

Screenshot_20210224-171309_Dso Music

似乎所有歌都会这样

另大佬能否添加一个收藏至任意歌单功能
还有什么时候能开放捐助呢

歌单无法正常拉取

不清楚是不是网易调整所致,还是我个人问题。刚刚发现网易云的歌单只能显示歌单中的第一首。
Screenshot_20210331-235507

均衡器问题

我开启了均衡器,把环绕音拉满了,到了下一首歌就会失效,打开均衡器发现按钮还是开启状态,点两下按钮关闭再打开无效,要把那个环绕音的滑块拉到最左然后松手,再拉回右边才会重新开启

能否优化横屏模式

你好,我很喜欢你做的这款播放器,想装在车机上替换默认的播放器,但现在有个问题,车机上是横屏模式,播放器为磁带界面,磁带控制按钮不太简明,白色底色稍显刺眼,不利于夜晚驾驶,恳请作者能否优化一下 横屏模式界面跟竖屏界面一致?谢谢

歌单说明点击后展开

如图 歌单名字下方的歌单说明目前只能显示两行,可以考虑设置点击后展开显示的功能。

Screenshot_20210323-093631

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.