diff --git a/FAQ.md b/FAQ.md index 9516c79..31e9f3b 100644 --- a/FAQ.md +++ b/FAQ.md @@ -52,18 +52,33 @@ 播放在线列表内的歌曲需要将它们都添加到我的列表才能播放,你可以全选列表内的歌曲然后添加到现有列表或者新创建的列表,然后去播放该列表内的歌曲。 - +或者如果你知道歌单 id 也可以直接输入歌单 id 打开。
+ +## 同步功能的使用(实验性,首次使用前建议先备份一次列表) + +**注意:由于同步传输时的数据是明文传输,请在受信任的网络下使用此功能!**
+此功能需要配合PC端使用,移动端与PC端处在同一个局域网(路由器的网络)下时,可以多端实时同步歌曲列表,使用方法: + +1. 在PC端的设置-数据同步开启同步功能(这时如果出现安全软件、防火墙等提示网络连接弹窗时需要点击允许) +2. 在移动端的设置-同步-同步服务器地址输入PC端显示的同步服务器地址(如果显示可以多个,则输入与**移动端上显示的本机地址**最相似的那个),端口号与PC端的同步端口一致 +3. 输入完这两项后点击“启动同步” +4. 若连接成功,对于首次同步时,若两边的设备的列表不为空,则PC端会弹出选择列表同步方式的弹窗,同步方式的说明弹窗下面有介绍 + +对于连接同步失败的可能原因: + +- 此功能需要PC端与移动端都连接在同一个路由器下的网络才能使用 +- 路由器若开启了AP隔离,则此功能无法使用 +- 检查防火墙是否拦截了PC端的服务端口 - +需要注意的是:这将会覆盖本地的目标列表,歌曲将被替换成最新的在线列表。 ## 杀毒软件提示有病毒或恶意行为 diff --git a/publish/changeLog.md b/publish/changeLog.md index 73dc6a9..c8d86d8 100644 --- a/publish/changeLog.md +++ b/publish/changeLog.md @@ -1,3 +1,7 @@ +### 新增 + +- 新增局域网同步功能(实验性,首次使用前建议先备份一次列表),此功能需要配合PC端使用,移动端与PC端处在同一个局域网(路由器的网络)下时,可以多端实时同步歌曲列表,使用问题请看"常见问题"。 + ### 修复 - 修复某些情况下出现恢复播放信息失败的问题 diff --git a/src/plugins/sync/client/syncList.js b/src/plugins/sync/client/syncList.js index 55a837c..78bdddb 100644 --- a/src/plugins/sync/client/syncList.js +++ b/src/plugins/sync/client/syncList.js @@ -1,6 +1,7 @@ import { getStore } from '@/store' import { action as commonAction } from '@/store/modules/common' import { action as listAction } from '@/store/modules/list' +import { toast } from '@/utils/tools' import { decryptMsg, encryptMsg } from './utils' let socket @@ -54,6 +55,7 @@ const handleListSync = enMsg => { if (!syncAction) return syncAction[0]() syncAction = null + toast('Sync successfully') break default: break diff --git a/src/utils/tools.js b/src/utils/tools.js index abf633b..8d4f517 100644 --- a/src/utils/tools.js +++ b/src/utils/tools.js @@ -226,7 +226,7 @@ export const setSyncAuthKey = async(serverId, key) => { let syncHostInfo export const getSyncHost = async() => { if (syncHostInfo === undefined) { - syncHostInfo = await getData(syncHostPrefix) || { host: '', port: '' } + syncHostInfo = await getData(syncHostPrefix) || { host: '', port: '23332' } } return { ...syncHostInfo } }