xref: /MusicFree/src/service/index.ts (revision eb04a81272737b34f86d5187f8ae78c9ea14f410)
1*eb04a812S猫头猫import { setConfig } from '@/common/localConfigManager';
2bf6e62f2S猫头猫import TrackPlayer, {Event} from 'react-native-track-player';
3bf6e62f2S猫头猫import MusicQueue from '../common/musicQueue';
4bf6e62f2S猫头猫
5bf6e62f2S猫头猫module.exports = async function () {
6bf6e62f2S猫头猫
7bf6e62f2S猫头猫  TrackPlayer.addEventListener(Event.RemotePlay, () => MusicQueue.play());
8bf6e62f2S猫头猫  TrackPlayer.addEventListener(Event.RemotePause, () => MusicQueue.pause());
9bf6e62f2S猫头猫  TrackPlayer.addEventListener(Event.RemotePrevious, () => MusicQueue.skipToPrevious());
10bf6e62f2S猫头猫  TrackPlayer.addEventListener(Event.RemoteNext, () => MusicQueue.skipToNext());
11*eb04a812S猫头猫  TrackPlayer.addEventListener(Event.RemoteDuck, async ({paused, parmanent}) => {
12*eb04a812S猫头猫    if(parmanent) {
13*eb04a812S猫头猫      return MusicQueue.pause();
14*eb04a812S猫头猫    }
15*eb04a812S猫头猫    if(paused) {
16*eb04a812S猫头猫      return MusicQueue.pause();
17*eb04a812S猫头猫    } else {
18*eb04a812S猫头猫      return MusicQueue.play();
19*eb04a812S猫头猫    }
20*eb04a812S猫头猫  });
21*eb04a812S猫头猫  TrackPlayer.addEventListener(Event.PlaybackProgressUpdated, (evt) => {
22*eb04a812S猫头猫    setConfig('status.music.progress', evt.position);
23bf6e62f2S猫头猫  })
24bf6e62f2S猫头猫
25bf6e62f2S猫头猫
26bf6e62f2S猫头猫
27bf6e62f2S猫头猫};
28