Giter Site home page Giter Site logo

lyswhut / lx-music-mobile Goto Github PK

View Code? Open in Web Editor NEW
9.0K 9.0K 1.2K 9.2 MB

一个基于 React native 开发的音乐软件

Home Page: https://lyswhut.github.io/lx-music-doc/

License: Apache License 2.0

JavaScript 23.25% Java 5.48% Objective-C 0.11% Ruby 0.10% Objective-C++ 0.05% TypeScript 71.01%
javascript music-player react-native-app

lx-music-mobile's People

Contributors

helloplhm-qwq avatar lyswhut 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  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

lx-music-mobile's Issues

是否考虑在通知栏控件中增加个快捷 开/关/解锁 桌面歌词的按钮

解决方案检查

描述您想要的解决方案

开着桌面歌词听歌,切到别的app看视频,发现歌词挡画面,想快速关闭,
通知栏的控件中的按钮可能是一个比较好的方案

描述您考虑过的替代方案

点击或者长按 桌面歌词,会有个解锁按钮啥的

其他内容

目前是不是用的原生音乐控件?那样的话还能支持这个功能么

尝试自己编译打包出现 ,keystore.properties 文件找不到

在 arch 上尝试自己编译打包时, 出来点问题:

  1. 需要将 package.json 中的 如下内容

    "pack:android": "./gradlew assembleRelease"
    修改为
    "pack:android": "cd android && ./gradlew assembleRelease"

继续编译打包

yarn run pack:android

出现了如下错误,这就解决不了了。

  • Where:
    Build file '/home/archlinux/Build/lx-music-mobile/android/app/build.gradle' line: 176

  • What went wrong:
    A problem occurred evaluating project ':app'.

/home/archlinux/Build/lx-music-mobile/android/keystore.properties (No such file or directory)

适配Android TV。armeabi-7a,android 4.4.2,API 19

解决方案检查

描述您想要的解决方案

适配Android TV。armeabi-7a,android 4.4.2,API 19
适配大屏幕,添加【调整app界面字体百分比】功能,支持200%的字体大小,以便能看清电视屏幕中app界面的文字。

描述您考虑过的替代方案

适配Android TV。armeabi-7a,android 4.4.2,API 19
适配大屏幕,添加【调整app界面字体百分比】功能,支持200%的字体大小,以便能看清电视屏幕中app界面的文字。

其他内容

适配Android TV。armeabi-7a,android 4.4.2,API 19
适配大屏幕,添加【调整app界面字体百分比】功能,支持200%的字体大小,以便能看清电视屏幕中app界面的文字。

通过WebDAV导入或导出歌单。升华【歌单同步】,让该功能从“局域网”层面上升至“互联网”层面。

解决方案检查

描述您想要的解决方案

通过WebDAV导入或导出歌单。升华【歌单同步】,让该功能从“局域网”层面上升至“互联网”层面。

描述您考虑过的替代方案

通过WebDAV导入或导出歌单。升华【歌单同步】,让该功能从“局域网”层面上升至“互联网”层面。

其他内容

通过WebDAV导入或导出歌单。升华【歌单同步】,让该功能从“局域网”层面上升至“互联网”层面。

更新后在WiFi环境下直连无法播放

解决方案检查

描述错误

重现
重现行为的步骤:
1.转到“ ...”
2.点击“ ....”
3.向下滚动到“ ....”
4.看到错误

预期行为

截图

环境:
  -操作系统及版本:[例如:Android 10]
  -软件安装包及版本:[例如:1.0.0 arm64-v8a]

其他内容

音乐无法播放

解决方案检查

描述错误

设置为系统播放器时,通过命令或任务调用播放时,通知栏会显示这样,调不起来,无法播放,图片已上传

重现
重现行为的步骤:
1.转到“ ...”
2.点击“ ....”
3.向下滚动到“ ....”
4.看到错误

预期行为

截图

环境:
  -操作系统及版本:[例如:Android 10]
  -软件安装包及版本:[例如:1.0.0 arm64-v8a]

其他内容

Screenshot_20210906-174827_One UI Home

应用启动失败

截图
Screenshot_20210524_092539_cn.toside.music.mobile.jpg

环境:
  -操作系统及版本:[例如:Android 10]
  -软件安装包及版本:[例如:1.0.0 arm64-v8a]

你用react native的话,相当于重写前端了,工作量挺大的

解决方案检查

描述您想要的解决方案

不用react好久了,记得RN以前也好多坑,也没有vue迁移react native的方案。你原来的前端代码是vue,用一些基于vue的跨平台的前端框架比较好。

描述您考虑过的替代方案
我用下来国内最好的框架是uni-app,国外最好的是Quasar
用响应式的代码写一套前端就够了,毕竟音乐app,调用原生功能的需求不多。

其他内容

关于若干建议及改进

  1. 软件打开之后主页为搜索页面,面建议直接设定为推荐或者我的歌单这个界面,可方便操作

[图片]

  1. 设置按钮可以隐藏一下,单独出来一个主页面平时使用误点几率增加
    [图片]

  2. 软件整体功能简洁,功能基本齐全,非常容易上手

安卓版App无法使用蓝牙耳机的部分功能

解决方案检查

描述您想要的解决方案
一加6手机搭配oppo enco free 2蓝牙耳机,使用蓝牙耳机自带的欢律app对耳机的部分操控进行了调整,但是LX Music在使用中无法匹配这些操控,包括短按一下暂停音乐,按两下切换下一首/上一首等操作

描述您考虑过的替代方案
耳机默认连接手机并没有切歌操作,需要通过欢律app进行设置,暂时没有找到替代方案

其他内容
附一张欢律app设置的截图吧
微信图片_20210808134438

安卓移动版不能指定音乐目录

安卓版本:11
内置存储有个music目录,里面有下好的音乐。用手机系统自带播放器可以识别,lx-music-mobile不能指定音乐目录,不能识别里面的音乐。几个app公用一个music音乐,是很正常的情况。希望改进

添加 桌面歌词 功能

背景

计划为APP添加音乐软件都会有的桌面歌词功能,由于react native没有提供桌面悬浮窗之类的UI组件,所以桌面歌词计划使用安卓原生代码实现。

现状

目前JS层的代码我已经初步编写完成,需要熟悉安卓的同学帮忙实现原生层的功能。

需要实现的功能

桌面歌词部分的安卓原生代码在android/app/src/main/java/com/lxmusicmobile/lyric/文件夹中,
与JS层交互的代码在该文件夹的LyricModule.java中,目前需要实现该文件里的以下方法

方法名称 说明 需要实现的功能
showLyric() 显示歌词 被调用时需要创建桌面歌词窗口
hideLyric() 关闭歌词 被调用时需要关闭桌面歌词窗口
setLyric(lyric, translation) 设置歌词 被调用时会传入歌词与歌词翻译(如果没有歌词则会传入空字符串),
这时需要解析传入的歌词(关于歌词的解析我们可以相互讨论,我做过JS层的歌词解析)
toggleTranslation(isShowTranslation) 是否显示歌词翻译 默认不显示翻译,若传入true时则显示翻译,false则不显示
play(time) 播放歌词 将会传入当前歌曲的播放时间,需要根据传入的时间定位到时间所在的歌词进行播放
pause 暂停歌词 暂停播放歌词

项目运行方式

项目环境准备

  1. 安装Node.js环境(如已安装请跳过):https://nodejs.org/ 下载LTS版Node.js安装,安装完成后,打开命令行输入node -v将会输出Node.js的版本号即表示已安装完成
  2. 拉取代码: 克隆本仓库代码,并切换到lyric分支
  3. 安装依赖: 在项目根目录打开命令行,执行命令:npm install,若此命令执行的过程中报错可以尝试百度报错内容找解决方法,或在此处贴出报错日志一起讨论解决
  4. 使用Android Studio打开项目根目录下的android文件夹,加载一遍gradle

项目启动步骤

  1. 启动模拟器或连接真实设备
  2. 启动开发服务器: 在项目根目录打开命令行,执行命令:npm run ar,若开发服务器意外停止了,可以执行npm start重新启动
  3. 开发: 使用Android Studio打开项目根目录下的android文件夹,即可在Android Studio内进行安卓代码的开发与调试

若遇到问题可以回帖讨论 :)
注:由于桌面歌词默认关闭,所以以上方法不会被调用,需要到设置开启桌面歌词

发现的三处不太合理之处,提出来一下

解决方案检查

描述错误
1、从后台划掉APP时音乐依然会播放,目前发现只有从App才能将音乐暂停
2、截图标明的地方更希望只有调出播放界面这一种功能(类似于YouTube music 这种)
3、应用内的手势返回有点问题,似乎除了播放界面会返回到上一个界面其余返回都是直接退出APP(也希望手势返回退出APP是连续两次,如果设计理念不同就算了吧)

重现
重现行为的步骤:
1.转到“ ...”
2.点击“ ....”
3.向下滚动到“ ....”
4.看到错误

预期行为

截图
20210529_171533.jpg

环境:
  -操作系统及版本:[例如:Android 10]
  -软件安装包及版本:[例如:1.0.0 arm64-v8a]

其他内容

The mobile search playlist will show that the load failed.

解决方案检查

描述错误

重现
重现行为的步骤:
1.转到“ ...”
2.点击“ ....”
3.向下滚动到“ ....”
4.看到错误

预期行为

截图

环境:
  -操作系统及版本:[例如:Android 10]
  -软件安装包及版本:[例如:1.0.0 arm64-v8a]

其他内容

播放界面无法横屏

解决方案检查

描述错误

重现
重现行为的步骤:
1.转到“ ...”
2.点击“ ....”
3.向下滚动到“ ....”
4.看到错误

预期行为

设计横屏的播放界面

截图

Screenshot_2021-05-30-22-45-55-1984198395.png

环境:
  -操作系统及版本:[例如:Android 10]
  -软件安装包及版本:[例如:1.0.0 arm64-v8a]

其他内容

二次启动闪退

第二次启动lx音乐会闪退,清理缓存也是一样

手机型号: Oneplus 8T

【Bug】通知栏进度条未正常显示

描述错误

小米11通知栏进度条未正常显示

重现

必现

预期行为

进度条时间能够与app歌曲播放进度同步

截图

微信图片_20210830205417
微信图片_20210830205406
微信图片_20210830205348

环境:

  -操作系统及版本:MIUI12.5 开发版 基于Android11
  -软件安装包及版本:lx-music-mobile-v0.7.1-universal.apk

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.