diff --git a/src/background.js b/src/background.js index 9e0e584..6d37c71 100644 --- a/src/background.js +++ b/src/background.js @@ -88,6 +88,9 @@ class Background { const expressApp = express(); expressApp.use('/', express.static(__dirname + '/')); expressApp.use('/api', expressProxy('http://127.0.0.1:10754')); + expressApp.use('/player', (req, res) => { + res.send(this.store.get('playerInfo')); + }); this.expressApp = expressApp.listen(27232); } diff --git a/src/electron/ipcMain.js b/src/electron/ipcMain.js index c8fa912..339b61b 100644 --- a/src/electron/ipcMain.js +++ b/src/electron/ipcMain.js @@ -121,4 +121,8 @@ export function initIpcMain(win, store) { console.log('removeProxy'); win.webContents.session.setProxy({}); }); + + ipcMain.on('playerInfo', (event, info) => { + store.set('playerInfo', info); + }); } diff --git a/src/utils/Player.js b/src/utils/Player.js index 46f54e7..4cf7e9c 100644 --- a/src/utils/Player.js +++ b/src/utils/Player.js @@ -177,6 +177,14 @@ export default class { setInterval(() => { this._progress = this._howler === null ? 0 : this._howler.seek(); }, 1000); + + // 发送正在播放的信息给主进程 + setInterval(() => { + ipcRenderer.send('playerInfo', { + currentTrack: this.currentTrack, + progress: this._progress, + }); + }, 1000); } _getNextTrack() { if (this._playNextList.length > 0) {