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 }
}