From f832d70701bf7d490c42b8700e2c1263d9b915ea Mon Sep 17 00:00:00 2001 From: lyswhut Date: Sun, 10 Jan 2021 13:14:50 +0800 Subject: [PATCH 01/10] =?UTF-8?q?=E6=9B=B4=E6=96=B0-dha=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E7=9A=84=E6=8F=8F=E8=BF=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- FAQ.md | 6 ++++-- README.md | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/FAQ.md b/FAQ.md index a4cf5271..993c6d68 100644 --- a/FAQ.md +++ b/FAQ.md @@ -62,6 +62,8 @@ 根据Electron里issue的[解决方案](https://github.com/electron/electron/issues/2170#issuecomment-736223269),
若你遇到透明问题可尝试添加启动参数 `-dha` 来禁用硬件加速,例如:`.\lx-music-desktop.exe -dha`。 +注:v1.6.0及之后的版本才支持`-dha`参数 + ## 软件启动后,界面无法显示 对于软件启动后,可以在任务栏看到软件,但软件界面在桌面上无任何显示,或者整个界面偶尔闪烁的情况。
@@ -109,13 +111,13 @@ Windows 7 未开启 Aero 效果时桌面歌词会有问题,详情看下面的 `v1.2.1`以前的版本在 Ubuntu 18.10 下第一次开启桌面歌词时歌词窗口会变白,需要关闭后再开启, `v1.2.1`及之后的版本已修复该问题。 -其他 Linux 系统未测试,如有异常也是意料之中,目前不打算去处理 Linux 平台的桌面歌词问题。 +其他 Linux 系统未测试,如有异常也是意料之中,目前不打算去处理 Linux 平台的桌面歌词问题,但你可以尝试按照`Linux 下界面异常`的解决方案去解决。 ## 歌曲下载失败 ### 提示 `ENOENT: no such file or directory, mkdir` -更换下载歌曲目录即可解决(一般是设置的歌曲下载目录没有读写入权限导致的)。 +更换下载歌曲目录即可解决(一般是设置的歌曲下载目录没有读写权限导致的)。 ### 提示 `请求异常` 或 `Fail` diff --git a/README.md b/README.md index 305491e3..c6e95f7e 100644 --- a/README.md +++ b/README.md @@ -81,7 +81,7 @@ npm run pack:linux 目前软件已支持的启动参数如下: - `-search` 启动软件时自动在搜索框搜索指定的内容,例如:`-search="突然的自我 - 伍佰"` -- `-dha` 禁用硬件加速启动(Disable Hardware Acceleration),窗口显示有问题时可以尝试添加此参数启动 +- `-dha` 禁用硬件加速启动(Disable Hardware Acceleration),窗口显示有问题时可以尝试添加此参数启动(v1.6.0起新增) - `-dt` 以非透明模式启动(Disable Transparent),对于未开启AERO效果的win7系统可加此参数启动以确保界面正常显示,原来的`-nt`参数已重命名为`-dt` ### 常见问题 From 74ce094d79ae724251f810d860facc3fc954268a Mon Sep 17 00:00:00 2001 From: lyswhut Date: Mon, 11 Jan 2021 14:12:58 +0800 Subject: [PATCH 02/10] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=97=A0=E6=B3=95?= =?UTF-8?q?=E8=AF=95=E5=90=AC=E8=A7=A3=E5=86=B3=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- FAQ.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FAQ.md b/FAQ.md index 993c6d68..5f303791 100644 --- a/FAQ.md +++ b/FAQ.md @@ -13,7 +13,7 @@ 1. 尝试更新到最新版本 2. 尝试切换其他歌曲(或直接搜索该歌曲),若全部歌曲都无法试听与下载则进行下一步 3. 尝试到 设置-音乐来源 切换到其他接口 -4. 尝试切换网络,比如用手机开热点(目前存在某些网络无法访问接口服务器的情况) +4. 尝试切换网络,比如用手机开热点(所有歌曲都提示请求异常时可通过此方法解决,或等一两天后再试) 5. 若还不行请到这个链接查看详情: 6. 若没有在第5条链接中的第一条评论中看到接口无法使用的说明,则应该是你网络无法访问接口服务器的问题,如果接口有问题我会在那里说明。 From f1561ddc219203d98d132cec18e70ee7030da0d2 Mon Sep 17 00:00:00 2001 From: lyswhut Date: Mon, 11 Jan 2021 16:21:08 +0800 Subject: [PATCH 03/10] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=9F=90=E4=BA=9B?= =?UTF-8?q?=E6=83=85=E5=86=B5=E4=B8=8B=E8=87=AA=E5=8A=A8=E6=8D=A2=E6=BA=90?= =?UTF-8?q?=E7=9A=84=E6=97=B6=E9=97=B4=E8=BF=87=E9=95=BF=E6=97=B6=E4=BC=9A?= =?UTF-8?q?=E7=BB=88=E6=AD=A2=E6=8D=A2=E6=BA=90=E8=87=AA=E5=8A=A8=E5=88=87?= =?UTF-8?q?=E6=AD=8C=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- publish/changeLog.md | 19 +------------------ src/renderer/components/core/Player.vue | 1 + 2 files changed, 2 insertions(+), 18 deletions(-) diff --git a/publish/changeLog.md b/publish/changeLog.md index aca1681f..7984eb5f 100644 --- a/publish/changeLog.md +++ b/publish/changeLog.md @@ -1,20 +1,3 @@ -### 新增 - -- 我的列表右键菜单新增列表排序功能,可调整单曲、多选后的歌曲的顺序。注意:多选排序还将会按照选中歌曲时的顺序排序 -- 添加鼠标提示的自动关闭功能,鼠标长时间(目前是10秒)不动时鼠标提示将会自动关闭 -- 添加鼠标指向歌曲封面的提示(对于进度条左边的歌曲封面,你可能不知道的操作->右击在“我的列表”定位当前播放的歌曲) -- 隐藏播放详情页按钮添加快速隐藏详情页提示(你可能不知道的操作->在播放详情页内的任意非窗口可拖动区域右键双击可以快速隐藏详情页) -- 添加桌面歌词字体、透明度调整按钮微调提示(你可能不知道的操作->对于字体、透明度可右击微调) -- 我的列表右键菜单添加搜索当前歌曲功能 -- 新增`-dha`参数,添加此启动参数将禁用硬件加速启动(Disable Hardware Acceleration),窗口显示有问题时可以尝试添加此参数启动,Linux系统的界面显示有问题时可尝试添加此参数启动,若不行可尝试添加`-dt`参数启动 -- 新增播放自动换源功能~ - -### 变更 - -- `-nt`参数更名为`-dt`(Disable Transparent),目前原来的`-nt`参数仍然可用,但将在后续的版本中移除 - ### 修复 -- 修复恢复上次播放的歌曲时在随机播放模式下不把恢复播放的歌曲放入已播放队列的问题(该问题会导致随机模式下会导致未播放完整个列表前就会再次随机到该歌曲,以及无法通过上一曲切回该歌曲) -- 修复音乐嵌入的封面在 Mac 系统无法显示的问题 -- 修复`-dt`(原来的`-nt`)启动参数不真正生效的问题 +- 修复某些情况下自动换源的时间过长时会终止换源自动切歌的问题 diff --git a/src/renderer/components/core/Player.vue b/src/renderer/components/core/Player.vue index 7a57a807..6843c5de 100644 --- a/src/renderer/components/core/Player.vue +++ b/src/renderer/components/core/Player.vue @@ -384,6 +384,7 @@ export default { if (!this.musicInfo.songmid) return console.log('出错') this.stopPlay() + this.clearLoadingTimeout() if (this.listId != 'download' && audio.error.code !== 1 && this.retryNum < 2) { // 若音频URL无效则尝试刷新2次URL // console.log(this.retryNum) if (!this.restorePlayTime) this.restorePlayTime = audio.currentTime // 记录出错的播放时间 From a5fce15661b9668f9bd4a26e56c416b4ebd5de67 Mon Sep 17 00:00:00 2001 From: lyswhut Date: Tue, 12 Jan 2021 11:09:27 +0800 Subject: [PATCH 04/10] =?UTF-8?q?=E6=94=B9=E8=BF=9B=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E6=8D=A2=E6=BA=90=E6=97=B6=E7=9A=84=E6=AD=8C=E6=9B=B2=E5=8C=B9?= =?UTF-8?q?=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- publish/changeLog.md | 4 ++++ src/main/events/index.js | 2 +- src/renderer/utils/music/index.js | 9 ++++++++- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/publish/changeLog.md b/publish/changeLog.md index 7984eb5f..e98d237b 100644 --- a/publish/changeLog.md +++ b/publish/changeLog.md @@ -1,3 +1,7 @@ +### 优化 + +- 改进自动换源时的歌曲匹配 + ### 修复 - 修复某些情况下自动换源的时间过长时会终止换源自动切歌的问题 diff --git a/src/main/events/index.js b/src/main/events/index.js index 301630ce..f72756e6 100644 --- a/src/main/events/index.js +++ b/src/main/events/index.js @@ -1,4 +1,4 @@ -global.lx_event = {} +if (!global.lx_event) global.lx_event = {} const Common = require('./Common') const MainWindow = require('./MainWindow') diff --git a/src/renderer/utils/music/index.js b/src/renderer/utils/music/index.js index 2444eb1a..9653e637 100644 --- a/src/renderer/utils/music/index.js +++ b/src/renderer/utils/music/index.js @@ -61,6 +61,7 @@ export default { const tasks = [] for (const source of sources.sources) { if (!sources[source.id].musicSearch || source.id === musicInfo.source || source.id === 'xm') continue + const sortedSinger = musicInfo.singer.includes('、') ? musicInfo.singer.split('、').sort((a, b) => a.charCodeAt(0) - b.charCodeAt(0)).join('、') : null tasks.push(sources[source.id].musicSearch.search(`${musicInfo.name} ${musicInfo.singer || ''}`.trim(), 1, { limit: 10 }).then(res => { for (const item of res.list) { @@ -72,6 +73,11 @@ export default { ( item.interval === musicInfo.interval && item.name === musicInfo.name && (item.singer.includes(musicInfo.singer) || musicInfo.singer.includes(item.singer)) + ) || + ( + sortedSinger && + item.singer.includes('、') && + item.singer.split('、').sort((a, b) => a.charCodeAt(0) - b.charCodeAt(0)).join('、') === sortedSinger ) ) { return item @@ -80,7 +86,7 @@ export default { return null }).catch(_ => null)) } - const result = (await Promise.all(tasks)).filter(s => s).reverse() + const result = (await Promise.all(tasks)).filter(s => s) const newResult = [] if (result.length) { for (let i = result.length - 1; i > -1; i--) { @@ -111,6 +117,7 @@ export default { result.splice(i, 1) } } + newResult.reverse() newResult.push(...result) } // console.log(newResult) From 2fd7e4503a4defa6bcafcf22a4b8fe76c0d1b724 Mon Sep 17 00:00:00 2001 From: lyswhut Date: Tue, 12 Jan 2021 11:42:56 +0800 Subject: [PATCH 05/10] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E6=8D=A2=E6=BA=90=E5=AF=BC=E8=87=B4=E7=9A=84=E6=90=9C=E7=B4=A2?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E6=AF=8F=E9=A1=B5=E5=8F=98=E6=88=9010?= =?UTF-8?q?=E6=9D=A1=E6=95=B0=E6=8D=AE=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- publish/changeLog.md | 1 + src/renderer/utils/music/bd/musicSearch.js | 12 ++++++------ src/renderer/utils/music/kg/musicSearch.js | 12 ++++++------ src/renderer/utils/music/kw/musicSearch.js | 12 ++++++------ src/renderer/utils/music/mg/musicSearch.js | 14 +++++++------- src/renderer/utils/music/tx/musicSearch.js | 14 +++++++------- src/renderer/utils/music/wy/musicSearch.js | 14 +++++++------- src/renderer/utils/music/xm/musicSearch.js | 12 ++++++------ 8 files changed, 46 insertions(+), 45 deletions(-) diff --git a/publish/changeLog.md b/publish/changeLog.md index e98d237b..4fca36d7 100644 --- a/publish/changeLog.md +++ b/publish/changeLog.md @@ -5,3 +5,4 @@ ### 修复 - 修复某些情况下自动换源的时间过长时会终止换源自动切歌的问题 +- 修复自动换源导致的搜索列表每页变成10条数据的问题 diff --git a/src/renderer/utils/music/bd/musicSearch.js b/src/renderer/utils/music/bd/musicSearch.js index d1b00903..c7574b81 100644 --- a/src/renderer/utils/music/bd/musicSearch.js +++ b/src/renderer/utils/music/bd/musicSearch.js @@ -11,9 +11,9 @@ export default { total: 0, page: 0, allPage: 1, - musicSearch(str, page) { + musicSearch(str, page, limit) { if (searchRequest && searchRequest.cancelHttp) searchRequest.cancelHttp() - searchRequest = httpFetch(`http://tingapi.ting.baidu.com/v1/restserver/ting?from=android&version=5.6.5.6&method=baidu.ting.search.merge&format=json&query=${encodeURIComponent(str)}&page_no=${page}&page_size=${this.limit}&type=0&data_source=0&use_cluster=1`) + searchRequest = httpFetch(`http://tingapi.ting.baidu.com/v1/restserver/ting?from=android&version=5.6.5.6&method=baidu.ting.search.merge&format=json&query=${encodeURIComponent(str)}&page_no=${page}&page_size=${limit}&type=0&data_source=0&use_cluster=1`) return searchRequest.promise.then(({ body }) => body) }, handleResult(rawData) { @@ -66,9 +66,9 @@ export default { }, search(str, page = 1, { limit } = {}, retryNum = 0) { if (++retryNum > 3) return Promise.reject(new Error('try max num')) - if (limit != null) this.limit = limit + if (limit == null) limit = this.limit - return this.musicSearch(str, page).then(result => { + return this.musicSearch(str, page, limit).then(result => { if (!result || result.error_code !== 22000) return this.search(str, page, { limit }, retryNum) let list = this.handleResult(result.result.song_info.song_list) @@ -76,12 +76,12 @@ export default { this.total = result.result.song_info.total this.page = page - this.allPage = Math.ceil(this.total / this.limit) + this.allPage = Math.ceil(this.total / limit) return Promise.resolve({ list, allPage: this.allPage, - limit: this.limit, + limit: limit, total: this.total, source: 'bd', }) diff --git a/src/renderer/utils/music/kg/musicSearch.js b/src/renderer/utils/music/kg/musicSearch.js index 364229f1..13cb9f0b 100644 --- a/src/renderer/utils/music/kg/musicSearch.js +++ b/src/renderer/utils/music/kg/musicSearch.js @@ -11,9 +11,9 @@ export default { total: 0, page: 0, allPage: 1, - musicSearch(str, page) { + musicSearch(str, page, limit) { if (searchRequest && searchRequest.cancelHttp) searchRequest.cancelHttp() - searchRequest = httpFetch(`http://ioscdn.kugou.com/api/v3/search/song?keyword=${encodeURIComponent(str)}&page=${page}&pagesize=${this.limit}&showtype=10&plat=2&version=7910&tag=1&correct=1&privilege=1&sver=5`) + searchRequest = httpFetch(`http://ioscdn.kugou.com/api/v3/search/song?keyword=${encodeURIComponent(str)}&page=${page}&pagesize=${limit}&showtype=10&plat=2&version=7910&tag=1&correct=1&privilege=1&sver=5`) return searchRequest.promise.then(({ body }) => body) }, handleResult(rawData) { @@ -71,9 +71,9 @@ export default { }, search(str, page = 1, { limit } = {}, retryNum = 0) { if (++retryNum > 3) return Promise.reject(new Error('try max num')) - if (limit != null) this.limit = limit + if (limit == null) limit = this.limit // http://newlyric.kuwo.cn/newlyric.lrc?62355680 - return this.musicSearch(str, page).then(result => { + return this.musicSearch(str, page, limit).then(result => { if (!result || result.errcode !== 0) return this.search(str, page, { limit }, retryNum) let list = this.handleResult(result.data.info) @@ -81,12 +81,12 @@ export default { this.total = result.data.total this.page = page - this.allPage = Math.ceil(this.total / this.limit) + this.allPage = Math.ceil(this.total / limit) return Promise.resolve({ list, allPage: this.allPage, - limit: this.limit, + limit, total: this.total, source: 'kg', }) diff --git a/src/renderer/utils/music/kw/musicSearch.js b/src/renderer/utils/music/kw/musicSearch.js index 4f201de9..8931d338 100644 --- a/src/renderer/utils/music/kw/musicSearch.js +++ b/src/renderer/utils/music/kw/musicSearch.js @@ -16,14 +16,14 @@ export default { page: 0, allPage: 1, // cancelFn: null, - musicSearch(str, page) { + musicSearch(str, page, limit) { if (this._musicSearchRequestObj != null) { cancelHttp(this._musicSearchRequestObj) this._musicSearchPromiseCancelFn(new Error('取消http请求')) } return new Promise((resolve, reject) => { this._musicSearchPromiseCancelFn = reject - this._musicSearchRequestObj = httpGet(`http://search.kuwo.cn/r.s?client=kt&all=${encodeURIComponent(str)}&pn=${page - 1}&rn=${this.limit}&uid=794762570&ver=kwplayer_ar_9.2.2.1&vipver=1&show_copyright_off=1&newver=1&ft=music&cluster=0&strategy=2012&encoding=utf8&rformat=json&vermerge=1&mobi=1&issubtitle=1`, (err, resp, body) => { + this._musicSearchRequestObj = httpGet(`http://search.kuwo.cn/r.s?client=kt&all=${encodeURIComponent(str)}&pn=${page - 1}&rn=${limit}&uid=794762570&ver=kwplayer_ar_9.2.2.1&vipver=1&show_copyright_off=1&newver=1&ft=music&cluster=0&strategy=2012&encoding=utf8&rformat=json&vermerge=1&mobi=1&issubtitle=1`, (err, resp, body) => { this._musicSearchRequestObj = null this._musicSearchPromiseCancelFn = null if (err) { @@ -125,9 +125,9 @@ export default { }, search(str, page = 1, { limit } = {}, retryNum = 0) { if (retryNum > 2) return Promise.reject(new Error('try max num')) - if (limit != null) this.limit = limit + if (limit == null) limit = this.limit // http://newlyric.kuwo.cn/newlyric.lrc?62355680 - return this.musicSearch(str, page).then(result => { + return this.musicSearch(str, page, limit).then(result => { // console.log(result) if (!result || (result.TOTAL !== '0' && result.SHOW === '0')) return this.search(str, page, { limit }, ++retryNum) let list = this.handleResult(result.abslist) @@ -136,13 +136,13 @@ export default { this.total = parseInt(result.TOTAL) this.page = page - this.allPage = Math.ceil(this.total / this.limit) + this.allPage = Math.ceil(this.total / limit) return Promise.resolve({ list, allPage: this.allPage, total: this.total, - limit: this.limit, + limit, source: 'kw', }) }) diff --git a/src/renderer/utils/music/mg/musicSearch.js b/src/renderer/utils/music/mg/musicSearch.js index 8ed3d238..183a3d56 100644 --- a/src/renderer/utils/music/mg/musicSearch.js +++ b/src/renderer/utils/music/mg/musicSearch.js @@ -11,9 +11,9 @@ export default { total: 0, page: 0, allPage: 1, - musicSearch(str, page) { + musicSearch(str, page, limit) { if (searchRequest && searchRequest.cancelHttp) searchRequest.cancelHttp() - searchRequest = httpFetch(`http://jadeite.migu.cn:7090/music_search/v2/search/searchAll?sid=4f87090d01c84984a11976b828e2b02c18946be88a6b4c47bcdc92fbd40762db&isCorrect=1&isCopyright=1&searchSwitch=%7B%22song%22%3A1%2C%22album%22%3A0%2C%22singer%22%3A0%2C%22tagSong%22%3A1%2C%22mvSong%22%3A0%2C%22bestShow%22%3A1%2C%22songlist%22%3A0%2C%22lyricSong%22%3A0%7D&pageSize=${this.limit}&text=${encodeURIComponent(str)}&pageNo=${page}&sort=0`, { + searchRequest = httpFetch(`http://jadeite.migu.cn:7090/music_search/v2/search/searchAll?sid=4f87090d01c84984a11976b828e2b02c18946be88a6b4c47bcdc92fbd40762db&isCorrect=1&isCopyright=1&searchSwitch=%7B%22song%22%3A1%2C%22album%22%3A0%2C%22singer%22%3A0%2C%22tagSong%22%3A1%2C%22mvSong%22%3A0%2C%22bestShow%22%3A1%2C%22songlist%22%3A0%2C%22lyricSong%22%3A0%7D&pageSize=${limit}&text=${encodeURIComponent(str)}&pageNo=${page}&sort=0`, { headers: { sign: 'c3b7ae985e2206e97f1b2de8f88691e2', timestamp: 1578225871982, @@ -25,7 +25,7 @@ export default { 'User-Agent': 'okhttp/3.9.1', }, }) - // searchRequest = httpFetch(`https://app.c.nf.migu.cn/MIGUM2.0/v1.0/content/search_all.do?isCopyright=1&isCorrect=1&pageNo=${page}&pageSize=${this.limit}&searchSwitch={%22song%22:1,%22album%22:0,%22singer%22:0,%22tagSong%22:0,%22mvSong%22:0,%22songlist%22:0,%22bestShow%22:0}&sort=0&text=${encodeURIComponent(str)}`) + // searchRequest = httpFetch(`https://app.c.nf.migu.cn/MIGUM2.0/v1.0/content/search_all.do?isCopyright=1&isCorrect=1&pageNo=${page}&pageSize=${limit}&searchSwitch={%22song%22:1,%22album%22:0,%22singer%22:0,%22tagSong%22:0,%22mvSong%22:0,%22songlist%22:0,%22bestShow%22:0}&sort=0&text=${encodeURIComponent(str)}`) return searchRequest.promise.then(({ body }) => body) }, getSinger(singers) { @@ -99,9 +99,9 @@ export default { }, search(str, page = 1, { limit } = {}, retryNum = 0) { if (++retryNum > 3) return Promise.reject(new Error('try max num')) - if (limit != null) this.limit = limit + if (limit == null) limit = this.limit // http://newlyric.kuwo.cn/newlyric.lrc?62355680 - return this.musicSearch(str, page).then(result => { + return this.musicSearch(str, page, limit).then(result => { // console.log(result) if (!result || result.code !== '000000') return Promise.reject(new Error(result ? result.info : '搜索失败')) const songResultData = result.songResultData || { resultList: [], totalCount: 0 } @@ -111,12 +111,12 @@ export default { this.total = parseInt(songResultData.totalCount) this.page = page - this.allPage = Math.ceil(this.total / this.limit) + this.allPage = Math.ceil(this.total / limit) return Promise.resolve({ list, allPage: this.allPage, - limit: this.limit, + limit, total: this.total, source: 'mg', }) diff --git a/src/renderer/utils/music/tx/musicSearch.js b/src/renderer/utils/music/tx/musicSearch.js index c2d21f92..db638542 100644 --- a/src/renderer/utils/music/tx/musicSearch.js +++ b/src/renderer/utils/music/tx/musicSearch.js @@ -12,13 +12,13 @@ export default { page: 0, allPage: 1, successCode: 0, - musicSearch(str, page, retryNum = 0) { + musicSearch(str, page, limit, retryNum = 0) { if (searchRequest && searchRequest.cancelHttp) searchRequest.cancelHttp() if (retryNum > 5) return Promise.reject(new Error('搜索失败')) - searchRequest = httpFetch(`https://c.y.qq.com/soso/fcgi-bin/client_search_cp?ct=24&qqmusic_ver=1298&new_json=1&remoteplace=sizer.yqq.song_next&searchid=49252838123499591&t=0&aggr=1&cr=1&catZhida=1&lossless=0&flag_qc=0&p=${page}&n=${this.limit}&w=${encodeURIComponent(str)}&loginUin=0&hostUin=0&format=json&inCharset=utf8&outCharset=utf-8¬ice=0&platform=yqq&needNewCode=0`) + searchRequest = httpFetch(`https://c.y.qq.com/soso/fcgi-bin/client_search_cp?ct=24&qqmusic_ver=1298&new_json=1&remoteplace=sizer.yqq.song_next&searchid=49252838123499591&t=0&aggr=1&cr=1&catZhida=1&lossless=0&flag_qc=0&p=${page}&n=${limit}&w=${encodeURIComponent(str)}&loginUin=0&hostUin=0&format=json&inCharset=utf8&outCharset=utf-8¬ice=0&platform=yqq&needNewCode=0`) // searchRequest = httpFetch(`http://ioscdn.kugou.com/api/v3/search/song?keyword=${encodeURIComponent(str)}&page=${page}&pagesize=${this.limit}&showtype=10&plat=2&version=7910&tag=1&correct=1&privilege=1&sver=5`) return searchRequest.promise.then(({ body }) => { - if (body.code !== this.successCode) return this.musicSearch(str, page, ++retryNum) + if (body.code !== this.successCode) return this.musicSearch(str, page, limit, ++retryNum) return body.data }) }, @@ -86,19 +86,19 @@ export default { }) }, search(str, page = 1, { limit } = {}) { - if (limit != null) this.limit = limit + if (limit == null) limit = this.limit // http://newlyric.kuwo.cn/newlyric.lrc?62355680 - return this.musicSearch(str, page).then(({ song }) => { + return this.musicSearch(str, page, limit).then(({ song }) => { let list = this.handleResult(song.list) this.total = song.totalnum this.page = page - this.allPage = Math.ceil(this.total / this.limit) + this.allPage = Math.ceil(this.total / limit) return Promise.resolve({ list, allPage: this.allPage, - limit: this.limit, + limit, total: this.total, source: 'tx', }) diff --git a/src/renderer/utils/music/wy/musicSearch.js b/src/renderer/utils/music/wy/musicSearch.js index d7a40fd9..4fdf8558 100644 --- a/src/renderer/utils/music/wy/musicSearch.js +++ b/src/renderer/utils/music/wy/musicSearch.js @@ -9,7 +9,7 @@ export default { total: 0, page: 0, allPage: 1, - musicSearch(str, page) { + musicSearch(str, page, limit) { if (searchRequest && searchRequest.cancelHttp) searchRequest.cancelHttp() searchRequest = httpFetch('https://music.163.com/weapi/search/get', { method: 'post', @@ -20,8 +20,8 @@ export default { form: weapi({ s: str, type: 1, // 1: 单曲, 10: 专辑, 100: 歌手, 1000: 歌单, 1002: 用户, 1004: MV, 1006: 歌词, 1009: 电台, 1014: 视频 - limit: this.limit, - offset: this.limit * (page - 1), + limit, + offset: limit * (page - 1), }), }) return searchRequest.promise.then(({ body }) => @@ -29,13 +29,13 @@ export default { ? musicDetailApi.getList(body.result.songs.map(s => s.id)).then(({ list }) => { this.total = body.result.songCount || 0 this.page = page - this.allPage = Math.ceil(this.total / this.limit) + this.allPage = Math.ceil(this.total / limit) return { code: 200, data: { list, allPage: this.allPage, - limit: this.limit, + limit, total: this.total, source: 'wy', }, @@ -103,8 +103,8 @@ export default { }, */ search(str, page = 1, { limit } = {}, retryNum = 0) { if (++retryNum > 3) return Promise.reject(new Error('try max num')) - if (limit != null) this.limit = limit - return this.musicSearch(str, page).then(result => { + if (limit == null) limit = this.limit + return this.musicSearch(str, page, limit).then(result => { // console.log(result) if (!result || result.code !== 200) return this.search(str, page, { limit }, retryNum) // let list = this.handleResult(result.result.songs || []) diff --git a/src/renderer/utils/music/xm/musicSearch.js b/src/renderer/utils/music/xm/musicSearch.js index b4a7ff6c..1971c190 100644 --- a/src/renderer/utils/music/xm/musicSearch.js +++ b/src/renderer/utils/music/xm/musicSearch.js @@ -11,13 +11,13 @@ export default { total: 0, page: 0, allPage: 1, - musicSearch(str, page) { + musicSearch(str, page, limit) { if (searchRequest && searchRequest.cancelHttp) searchRequest.cancelHttp() searchRequest = xmRequest('/api/search/searchSongs', { key: str, pagingVO: { page: page, - pageSize: this.limit, + pageSize: limit, }, }) return searchRequest.promise.then(({ body }) => body) @@ -89,9 +89,9 @@ export default { }, search(str, page = 1, { limit } = {}, retryNum = 0) { if (++retryNum > 3) return Promise.reject(new Error('try max num')) - if (limit != null) this.limit = limit + if (limit == null) limit = this.limit // http://newlyric.kuwo.cn/newlyric.lrc?62355680 - return this.musicSearch(str, page).then(result => { + return this.musicSearch(str, page, limit).then(result => { if (!result) return this.search(str, page, { limit }, retryNum) if (result.code !== 'SUCCESS') return this.search(str, page, { limit }, retryNum) // const songResultData = result.data || { songs: [], total: 0 } @@ -101,12 +101,12 @@ export default { this.total = parseInt(result.result.data.pagingVO.count) this.page = page - this.allPage = Math.ceil(this.total / this.limit) + this.allPage = Math.ceil(this.total / limit) return Promise.resolve({ list, allPage: this.allPage, - limit: this.limit, + limit, total: this.total, source: 'xm', }) From 947011103cf84c98f19ca21a2a33b7877ac19662 Mon Sep 17 00:00:00 2001 From: lyswhut Date: Wed, 13 Jan 2021 11:14:53 +0800 Subject: [PATCH 06/10] =?UTF-8?q?=E9=99=8D=E7=BA=A7electron=E5=88=B09.3.3?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E9=83=A8=E5=88=86=E7=B3=BB=E7=BB=9F=E6=B2=A1?= =?UTF-8?q?=E6=9C=89=E5=A3=B0=E9=9F=B3=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 22 +++++++++++----------- package.json | 2 +- publish/changeLog.md | 1 + 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/package-lock.json b/package-lock.json index ec673875..f385ca2f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "lx-music-desktop", - "version": "1.6.0-beta", + "version": "1.6.0", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -7258,9 +7258,9 @@ } }, "electron": { - "version": "9.4.0", - "resolved": "https://registry.npm.taobao.org/electron/download/electron-9.4.0.tgz?cache=0&sync_timestamp=1608583696623&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Felectron%2Fdownload%2Felectron-9.4.0.tgz", - "integrity": "sha1-w8YH41mCJt26r/i6vN/6i7IhCTY=", + "version": "9.3.3", + "resolved": "https://registry.npm.taobao.org/electron/download/electron-9.3.3.tgz?cache=0&sync_timestamp=1610496986855&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Felectron%2Fdownload%2Felectron-9.3.3.tgz", + "integrity": "sha1-maZhnV32j5dpel0dgu86imP83zY=", "dev": true, "requires": { "@electron/get": "^1.0.1", @@ -7269,9 +7269,9 @@ }, "dependencies": { "@types/node": { - "version": "12.19.9", - "resolved": "https://registry.npm.taobao.org/@types/node/download/@types/node-12.19.9.tgz?cache=0&sync_timestamp=1608047797419&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fnode%2Fdownload%2F%40types%2Fnode-12.19.9.tgz", - "integrity": "sha1-mQrWh62LJu9tzDSk9pwz1AyVtnk=", + "version": "12.19.13", + "resolved": "https://registry.npm.taobao.org/@types/node/download/@types/node-12.19.13.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fnode%2Fdownload%2F%40types%2Fnode-12.19.13.tgz", + "integrity": "sha1-iI4rNBWfuRSWWJSE7BaWGCErUbc=", "dev": true } } @@ -8697,7 +8697,7 @@ "dependencies": { "debug": { "version": "2.6.9", - "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz?cache=0&sync_timestamp=1600502894812&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-2.6.9.tgz", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz?cache=0&sync_timestamp=1607566533140&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-2.6.9.tgz", "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", "dev": true, "requires": { @@ -8706,7 +8706,7 @@ }, "ms": { "version": "2.0.0", - "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz?cache=0&sync_timestamp=1607433842694&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true } @@ -14658,7 +14658,7 @@ }, "roarr": { "version": "2.15.4", - "resolved": "https://registry.npm.taobao.org/roarr/download/roarr-2.15.4.tgz?cache=0&sync_timestamp=1600094609360&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Froarr%2Fdownload%2Froarr-2.15.4.tgz", + "resolved": "https://registry.npm.taobao.org/roarr/download/roarr-2.15.4.tgz?cache=0&sync_timestamp=1610472352033&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Froarr%2Fdownload%2Froarr-2.15.4.tgz", "integrity": "sha1-9f55W3uDjM/jXcYI4Cgrnrouev0=", "dev": true, "optional": true, @@ -14833,7 +14833,7 @@ "dependencies": { "type-fest": { "version": "0.13.1", - "resolved": "https://registry.npm.taobao.org/type-fest/download/type-fest-0.13.1.tgz?cache=0&sync_timestamp=1602623859603&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftype-fest%2Fdownload%2Ftype-fest-0.13.1.tgz", + "resolved": "https://registry.npm.taobao.org/type-fest/download/type-fest-0.13.1.tgz?cache=0&sync_timestamp=1606468844109&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftype-fest%2Fdownload%2Ftype-fest-0.13.1.tgz", "integrity": "sha1-AXLLW86AsL1ULqNI21DH4hg02TQ=", "dev": true, "optional": true diff --git a/package.json b/package.json index 35ea8bc0..71e1f28e 100644 --- a/package.json +++ b/package.json @@ -178,7 +178,7 @@ "cross-env": "^7.0.3", "css-loader": "^4.3.0", "del": "^6.0.0", - "electron": "^9.4.0", + "electron": "^9.3.3", "electron-builder": "^22.9.1", "electron-debug": "^3.2.0", "electron-devtools-installer": "^3.1.1", diff --git a/publish/changeLog.md b/publish/changeLog.md index 4fca36d7..cabaca8f 100644 --- a/publish/changeLog.md +++ b/publish/changeLog.md @@ -6,3 +6,4 @@ - 修复某些情况下自动换源的时间过长时会终止换源自动切歌的问题 - 修复自动换源导致的搜索列表每页变成10条数据的问题 +- 降级electron到9.3.3修复部分系统没有声音的问题 From b69ecca252dc6027fecbbf1ae8c2c8c0e56eefa3 Mon Sep 17 00:00:00 2001 From: lyswhut Date: Wed, 13 Jan 2021 11:16:16 +0800 Subject: [PATCH 07/10] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=9B=AE=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/renderer/views/Setting.vue | 32 ++++++++++++++++++++------------ 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/src/renderer/views/Setting.vue b/src/renderer/views/Setting.vue index da8bc60e..9ad50929 100644 --- a/src/renderer/views/Setting.vue +++ b/src/renderer/views/Setting.vue @@ -1,14 +1,14 @@