|
|
@@ -437,13 +437,8 @@ export struct LocalMusic {
|
|
|
|
|
|
// 等待数据恢复完成后再获取播放列表
|
|
|
LogUtils.getInstance().LOGI('LocalMusic: Waiting for UnifiedPlayerService data restoration...');
|
|
|
- const dataRestored: boolean = await this.unifiedPlayerService.waitForDataRestoration(5000);
|
|
|
+ await this.unifiedPlayerService.waitForDataRestoration(5000);
|
|
|
|
|
|
- if (!dataRestored) {
|
|
|
- LogUtils.getInstance().LOGI('LocalMusic: Data restoration timeout, but proceeding with initialization');
|
|
|
- } else {
|
|
|
- LogUtils.getInstance().LOGI('LocalMusic: Data restoration completed successfully');
|
|
|
- }
|
|
|
|
|
|
// 从UnifiedPlayerService恢复播放列表和状态
|
|
|
const restoredPlaylist = this.unifiedPlayerService.getPlaylist();
|
|
|
@@ -456,11 +451,6 @@ export struct LocalMusic {
|
|
|
this.curIndex = restoredIndex;
|
|
|
this.currentSong = restoredSong || undefined;
|
|
|
|
|
|
- // 同步到AppStorage
|
|
|
- AppStorage.setOrCreate('songList', this.songList);
|
|
|
- AppStorage.setOrCreate('currIndex', this.curIndex);
|
|
|
- AppStorage.setOrCreate('currentSong', this.currentSong);
|
|
|
-
|
|
|
// 更新UI数据源
|
|
|
this.sonDataSource.pushArrayData(this.songList);
|
|
|
|
|
|
@@ -544,18 +534,11 @@ export struct LocalMusic {
|
|
|
}
|
|
|
|
|
|
onSongChanged(song: VideoItem): void {
|
|
|
- console.log(`Heanup onSongChanged - 开始处理歌曲切换: ${song.name}`);
|
|
|
- console.log(`Heanup onSongChanged - 切换前 oldSeconds: ${this.localMusic.oldSeconds}, currentTime: ${this.localMusic.currentTime}`);
|
|
|
-
|
|
|
// 立即重置时间显示状态,防止新歌曲时间显示被上一首歌曲的时间"卡住"
|
|
|
this.localMusic.oldSeconds = 0;
|
|
|
this.localMusic.currentTime = "00:00";
|
|
|
this.localMusic.lastSongPath = song.filePath; // 更新当前歌曲路径
|
|
|
this.localMusic.justSwitched = true; // 标记歌曲刚刚切换
|
|
|
-
|
|
|
-
|
|
|
- console.log(`Heanup onSongChanged - 重置后 oldSeconds: ${this.localMusic.oldSeconds}, currentTime: ${this.localMusic.currentTime}`);
|
|
|
-
|
|
|
// 同步当前歌曲信息
|
|
|
this.localMusic.currentSong = song;
|
|
|
this.localMusic.videoUrl = song.filePath;
|
|
|
@@ -566,17 +549,8 @@ export struct LocalMusic {
|
|
|
// 更新当前索引
|
|
|
const currentIndex: number = this.localMusic.unifiedPlayerService.getCurrentIndex();
|
|
|
this.localMusic.curIndex = currentIndex;
|
|
|
-
|
|
|
- // 同步到AppStorage,确保卡片能获取到最新状态
|
|
|
- AppStorage.setOrCreate('currentSong', song);
|
|
|
- AppStorage.setOrCreate('currIndex', currentIndex);
|
|
|
- AppStorage.setOrCreate('songList', this.localMusic.songList);
|
|
|
-
|
|
|
// 更新最近播放时间
|
|
|
this.localMusic.updateLastPlayTimeStr(song.filePath);
|
|
|
-
|
|
|
- console.log(`Heanup onSongChanged - 歌曲切换完成: ${song.name} at index ${currentIndex}`);
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic: Song synchronized - ${song.name} at index ${currentIndex} - oldSeconds=${this.localMusic.oldSeconds},currentTime=${this.localMusic.currentTime}`);
|
|
|
}
|
|
|
|
|
|
onProgressChanged(progress: PlayProgress): void {
|
|
|
@@ -588,8 +562,6 @@ export struct LocalMusic {
|
|
|
}
|
|
|
|
|
|
onError(error: PlayerError): void {
|
|
|
- LogUtils.getInstance().LOGI(`UnifiedPlayerService error in LocalMusic: ${error.message}`);
|
|
|
- ToastUtil.showToast(`播放错误: ${error.message}`);
|
|
|
this.localMusic.handlePlaybackError();
|
|
|
}
|
|
|
}
|
|
|
@@ -664,10 +636,6 @@ export struct LocalMusic {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- // 同步播放列表和当前索引到AppStorage,确保卡片能访问
|
|
|
- AppStorage.setOrCreate('songList', this.songList);
|
|
|
- AppStorage.setOrCreate('currIndex', this.curIndex);
|
|
|
-
|
|
|
if (ArrayUtil.isNotEmpty(this.songList)) {
|
|
|
this.isFirstStartPlay = true
|
|
|
this.sonDataSource.pushArrayData(this.songList)
|
|
|
@@ -679,11 +647,6 @@ export struct LocalMusic {
|
|
|
this.name = this.currentSong.name
|
|
|
this.cover = this.currentSong.pixelMapPath
|
|
|
this.artist = this.currentSong.artist
|
|
|
-
|
|
|
- // 同步当前歌曲到AppStorage
|
|
|
- AppStorage.setOrCreate('currentSong', this.currentSong);
|
|
|
-
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic: Playlist restored - ${this.songList.length} songs, current: ${this.currentSong.name}`);
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
@@ -1378,15 +1341,11 @@ export struct LocalMusic {
|
|
|
// 避免在文件列表更新时破坏用户的播放列表
|
|
|
if (ArrayUtil.isEmpty(this.songList) && ArrayUtil.isNotEmpty(globalVideoList)) {
|
|
|
this.songList = globalVideoList;
|
|
|
- AppStorage.setOrCreate('songList', this.songList);
|
|
|
this.sonDataSource.pushArrayData(this.songList);
|
|
|
|
|
|
// 同步到统一播放器服务进行持久化
|
|
|
this.syncPlaylistToService();
|
|
|
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic: updateListData - Created initial playlist with ${this.songList.length} songs`);
|
|
|
- } else {
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic: updateListData - Preserving existing playlist with ${this.songList.length} songs, current directory has ${globalVideoList.length} songs`);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -4782,7 +4741,6 @@ export struct LocalMusic {
|
|
|
break;
|
|
|
case CommonConstants.TYPE_IS_CSJAD:
|
|
|
return
|
|
|
- break;
|
|
|
case CommonConstants.TYPE_LOCAL:
|
|
|
// 移除自动停止逻辑,让UnifiedPlayerService处理播放器状态管理
|
|
|
// if (this.CONTROL_PlayStatus !== PlayStatus.INIT) {
|
|
|
@@ -4794,7 +4752,6 @@ export struct LocalMusic {
|
|
|
if (index !== undefined) {
|
|
|
this.curIndex = index
|
|
|
}
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic: doPlay from playlist - song: ${item.name}, index: ${index}`);
|
|
|
} else {
|
|
|
// 点击文件列表中的歌曲,需要判断是否要创建新的播放列表
|
|
|
let globalVideoList = Utility.getGlobalList(this.videoLocalList, CommonConstants.TYPE_LOCAL) as VideoItem[];
|
|
|
@@ -4807,20 +4764,13 @@ export struct LocalMusic {
|
|
|
// 如果当前播放列表已经包含这首歌,使用现有播放列表
|
|
|
this.curIndex = currentSongIndex;
|
|
|
this.currentSong = this.songList[this.curIndex];
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic: doPlay - Found song in existing playlist at index ${this.curIndex}, keeping playlist with ${this.songList.length} songs`);
|
|
|
} else {
|
|
|
// 如果当前播放列表不包含这首歌,或者没有播放列表,则创建新的
|
|
|
this.songList = globalVideoList;
|
|
|
this.sonDataSource.pushArrayData(this.songList);
|
|
|
this.currentSong = globalVideoList[this.curIndex];
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic: doPlay - Created new playlist with ${this.songList.length} songs, current song: ${this.currentSong.name}`);
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
- AppStorage.setOrCreate('currentSong',this.currentSong) ;
|
|
|
- AppStorage.setOrCreate('songList', this.songList);
|
|
|
- AppStorage.setOrCreate('currIndex', this.curIndex);
|
|
|
-
|
|
|
this.videoUrl = this.currentSong.filePath
|
|
|
this.name = this.currentSong.name
|
|
|
this.cover = this.currentSong.pixelMapPath
|
|
|
@@ -4832,14 +4782,8 @@ export struct LocalMusic {
|
|
|
this.lastSongPath = this.currentSong.filePath;
|
|
|
this.justSwitched = true; // 标记歌曲刚刚切换
|
|
|
|
|
|
- console.log(`Heanup doPlay - 重置时间显示状态: oldSeconds=${this.oldSeconds}, currentTime=${this.currentTime}`);
|
|
|
-
|
|
|
// 同步播放列表到UnifiedPlayerService
|
|
|
this.syncPlaylistToService();
|
|
|
-
|
|
|
- LogUtil.info('this.currentSong.duration =' + this.currentSong.duration)
|
|
|
- LogUtil.info('this.currentSong.sampleRate =' + this.currentSong.sampleRate)
|
|
|
- LogUtil.info('this.currentSongmimeType =' + this.currentSong.mimeType)
|
|
|
this.startPlayOrResumePlay()
|
|
|
break;
|
|
|
|
|
|
@@ -5963,14 +5907,7 @@ export struct LocalMusic {
|
|
|
|
|
|
// 更新当前索引
|
|
|
this.curIndex = Utility.getIndexFromList(this.songList, this.videoUrl);
|
|
|
-
|
|
|
- // 同步到AppStorage
|
|
|
- AppStorage.setOrCreate('songList', this.songList);
|
|
|
- AppStorage.setOrCreate('currIndex', this.curIndex);
|
|
|
-
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic: Moved song from ${index} to ${newIndex} via UnifiedPlayerService`);
|
|
|
} catch (error) {
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic itemMoveSon error: ${error}`);
|
|
|
|
|
|
// 错误处理:回退到原有逻辑
|
|
|
let tmp = this.songList.splice(index, 1);
|
|
|
@@ -9987,7 +9924,6 @@ export struct LocalMusic {
|
|
|
this.startPipLyric()
|
|
|
this.mDestroyPage = false;
|
|
|
this.animationState = AnimationStatus.Running
|
|
|
- LogUtils.getInstance().LOGI("startPlayOrResumePlay start this.CONTROL_PlayStatus:" + this.CONTROL_PlayStatus)
|
|
|
|
|
|
// 智能同步播放列表到UnifiedPlayerService
|
|
|
if (ArrayUtil.isNotEmpty(this.songList)) {
|
|
|
@@ -9998,7 +9934,6 @@ export struct LocalMusic {
|
|
|
if (ArrayUtil.isEmpty(servicePlaylist)) {
|
|
|
// 如果服务没有播放列表,使用LocalMusic的播放列表
|
|
|
this.unifiedPlayerService.setPlaylist(this.songList, this.curIndex);
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic: Set playlist to UnifiedPlayerService - ${this.songList.length} songs, index ${this.curIndex}`);
|
|
|
} else {
|
|
|
// 如果服务已有播放列表,同步服务的状态到LocalMusic
|
|
|
const serviceSong = this.unifiedPlayerService.getCurrentSong();
|
|
|
@@ -10013,13 +9948,6 @@ export struct LocalMusic {
|
|
|
this.name = serviceSong.name;
|
|
|
this.artist = serviceSong.artist;
|
|
|
this.cover = serviceSong.pixelMapPath;
|
|
|
-
|
|
|
- // 同步到AppStorage
|
|
|
- AppStorage.setOrCreate('songList', this.songList);
|
|
|
- AppStorage.setOrCreate('currIndex', this.curIndex);
|
|
|
- AppStorage.setOrCreate('currentSong', this.currentSong);
|
|
|
-
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic: Synced from UnifiedPlayerService - ${this.songList.length} songs, index ${this.curIndex}, song: ${serviceSong.name}`);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -10117,16 +10045,10 @@ export struct LocalMusic {
|
|
|
this.artist = currentSong.artist;
|
|
|
this.cover = currentSong.pixelMapPath;
|
|
|
|
|
|
- // 同步到AppStorage
|
|
|
- AppStorage.setOrCreate('songList', this.songList);
|
|
|
- AppStorage.setOrCreate('currIndex', this.curIndex);
|
|
|
- AppStorage.setOrCreate('currentSong', currentSong);
|
|
|
|
|
|
}
|
|
|
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic: playSongAtIndex ${index} completed via UnifiedPlayerService`);
|
|
|
} catch (error) {
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic playSongAtIndex error: ${error}`);
|
|
|
ToastUtil.showToast(`播放歌曲失败: ${error}`);
|
|
|
|
|
|
// 错误处理:回退到原有逻辑
|
|
|
@@ -10143,7 +10065,11 @@ export struct LocalMusic {
|
|
|
const caller = stack.split('\n')[2] || 'Unknown caller';
|
|
|
|
|
|
this.unifiedPlayerService.setPlaylist(this.songList, this.curIndex);
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic: Playlist synced to UnifiedPlayerService - ${this.songList.length} songs, caller: ${caller.trim()}`);
|
|
|
+
|
|
|
+ // 同步播放模式到UnifiedPlayerService
|
|
|
+ this.unifiedPlayerService.setPlayMode(this.playType);
|
|
|
+
|
|
|
+ LogUtils.getInstance().LOGI(`LocalMusic: Playlist and play mode synced to UnifiedPlayerService - ${this.songList.length} songs, mode: ${this.playType}, caller: ${caller.trim()}`);
|
|
|
|
|
|
// 如果同步的是小播放列表,记录更多信息
|
|
|
if (this.songList.length <= 20) {
|
|
|
@@ -10171,16 +10097,10 @@ export struct LocalMusic {
|
|
|
// 更新当前索引
|
|
|
this.curIndex = this.unifiedPlayerService.getCurrentIndex();
|
|
|
|
|
|
- // 同步到AppStorage
|
|
|
- AppStorage.setOrCreate('songList', this.songList);
|
|
|
- AppStorage.setOrCreate('currIndex', this.curIndex);
|
|
|
-
|
|
|
ToastUtil.showToast(`已移除 ${removedSong.name}`);
|
|
|
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic: Removed song at index ${index} via UnifiedPlayerService - ${removedSong.name}`);
|
|
|
}
|
|
|
} catch (error) {
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic removeFromPlaylistViaService error: ${error}`);
|
|
|
|
|
|
// 错误处理:回退到原有逻辑
|
|
|
if (index >= 0 && index < this.songList.length) {
|
|
|
@@ -11540,14 +11460,9 @@ export struct LocalMusic {
|
|
|
this.songList = [...this.songList]; // 触发状态更新
|
|
|
this.sonDataSource.pushArrayData(this.songList);
|
|
|
|
|
|
- // 同步到AppStorage
|
|
|
- AppStorage.setOrCreate('songList', this.songList);
|
|
|
-
|
|
|
ToastUtil.showToast('已添加至下一首播放')
|
|
|
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic: Added song to next play via UnifiedPlayerService - ${song.name}`);
|
|
|
} catch (error) {
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic addToNextPlay error: ${error}`);
|
|
|
|
|
|
// 错误处理:回退到原有逻辑
|
|
|
const insertPos = this.curIndex + 1;
|
|
|
@@ -11565,11 +11480,8 @@ export struct LocalMusic {
|
|
|
}
|
|
|
|
|
|
try {
|
|
|
- if (this.playType == 3) { //3:随机播放
|
|
|
- this.randomPlay()
|
|
|
- return;
|
|
|
- }
|
|
|
-
|
|
|
+ // 移除了随机播放的特殊处理,统一使用UnifiedPlayerService
|
|
|
+ // 这样可以确保所有播放模式的状态都保持一致
|
|
|
if (ArrayUtil.isNotEmpty(this.songList)) {
|
|
|
// 如果正在投播,需要特殊处理
|
|
|
if (this.isCurrentlyCasting()) {
|
|
|
@@ -11577,8 +11489,9 @@ export struct LocalMusic {
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- // 使用UnifiedPlayerService播放下一首
|
|
|
+ // 使用UnifiedPlayerService播放下一首,支持所有播放模式(包括随机播放)
|
|
|
await this.unifiedPlayerService.playNext();
|
|
|
+
|
|
|
// 智能同步播放列表到UnifiedPlayerService
|
|
|
const servicePlaylist = this.unifiedPlayerService.getPlaylist();
|
|
|
const serviceIndex = this.unifiedPlayerService.getCurrentIndex();
|
|
|
@@ -11586,7 +11499,6 @@ export struct LocalMusic {
|
|
|
if (ArrayUtil.isEmpty(servicePlaylist)) {
|
|
|
// 如果服务没有播放列表,使用LocalMusic的播放列表
|
|
|
this.unifiedPlayerService.setPlaylist(this.songList, this.curIndex);
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic playNext: Set playlist to UnifiedPlayerService - ${this.songList.length} songs, index ${this.curIndex}`);
|
|
|
} else {
|
|
|
// 如果服务已有播放列表,检查是否需要同步
|
|
|
const serviceSong = this.unifiedPlayerService.getCurrentSong();
|
|
|
@@ -11596,17 +11508,9 @@ export struct LocalMusic {
|
|
|
this.curIndex = serviceIndex;
|
|
|
this.currentSong = serviceSong;
|
|
|
this.sonDataSource.pushArrayData(this.songList);
|
|
|
-
|
|
|
- // 同步到AppStorage
|
|
|
- AppStorage.setOrCreate('songList', this.songList);
|
|
|
- AppStorage.setOrCreate('currIndex', this.curIndex);
|
|
|
- AppStorage.setOrCreate('currentSong', this.currentSong);
|
|
|
-
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic playNext: Synced from UnifiedPlayerService - ${this.songList.length} songs, index ${this.curIndex}, song: ${serviceSong.name}`);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-
|
|
|
// 更新本地状态以保持UI同步
|
|
|
const currentIndex = this.unifiedPlayerService.getCurrentIndex();
|
|
|
const currentSong = this.unifiedPlayerService.getCurrentSong();
|
|
|
@@ -11624,15 +11528,12 @@ export struct LocalMusic {
|
|
|
this.currentTime = "00:00";
|
|
|
this.lastSongPath = currentSong.filePath;
|
|
|
this.justSwitched = true; // 标记歌曲刚刚切换
|
|
|
- console.log(`Heanup playNext - 重置时间显示状态: oldSeconds=${this.oldSeconds}, currentTime=${this.currentTime}`);
|
|
|
|
|
|
this.changeImageAnimation();
|
|
|
}
|
|
|
|
|
|
- LogUtils.getInstance().LOGI("LocalMusic: playNext completed via UnifiedPlayerService");
|
|
|
}
|
|
|
} catch (error) {
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic playNext error: ${error}`);
|
|
|
ToastUtil.showToast(`切换下一首失败: ${error}`);
|
|
|
|
|
|
// 错误处理:回退到原有逻辑
|
|
|
@@ -11651,9 +11552,6 @@ export struct LocalMusic {
|
|
|
this.curIndex++;
|
|
|
}
|
|
|
|
|
|
- AppStorage.setOrCreate('songList', this.songList);
|
|
|
- AppStorage.setOrCreate('currIndex', this.curIndex);
|
|
|
-
|
|
|
this.CONTROL_PlayStatus = PlayStatus.INIT;
|
|
|
this.stop();
|
|
|
this.currentSong = this.songList[this.curIndex]
|
|
|
@@ -11781,11 +11679,8 @@ export struct LocalMusic {
|
|
|
}
|
|
|
|
|
|
try {
|
|
|
- if (this.playType == 3) { //3:随机播放的上一首应该应该播放历史记录的第二首
|
|
|
- this.randomModePlayFromHistory()
|
|
|
- return;
|
|
|
- }
|
|
|
-
|
|
|
+ // 移除了随机播放的特殊处理,统一使用UnifiedPlayerService
|
|
|
+ // 这样可以确保所有播放模式的状态都保持一致
|
|
|
if (ArrayUtil.isNotEmpty(this.songList)) {
|
|
|
// 如果正在投播,需要特殊处理
|
|
|
if (this.isCurrentlyCasting()) {
|
|
|
@@ -11793,14 +11688,13 @@ export struct LocalMusic {
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- // 使用UnifiedPlayerService播放上一首
|
|
|
+ // 使用UnifiedPlayerService播放上一首,支持所有播放模式(包括随机播放)
|
|
|
await this.unifiedPlayerService.playPrevious();
|
|
|
|
|
|
// 智能同步播放列表到UnifiedPlayerService
|
|
|
const servicePlaylist = this.unifiedPlayerService.getPlaylist();
|
|
|
const serviceIndex = this.unifiedPlayerService.getCurrentIndex();
|
|
|
|
|
|
-
|
|
|
// 更新本地状态以保持UI同步
|
|
|
const currentIndex = this.unifiedPlayerService.getCurrentIndex();
|
|
|
const currentSong = this.unifiedPlayerService.getCurrentSong();
|
|
|
@@ -11818,20 +11712,12 @@ export struct LocalMusic {
|
|
|
this.currentTime = "00:00";
|
|
|
this.lastSongPath = currentSong.filePath;
|
|
|
this.justSwitched = true; // 标记歌曲刚刚切换
|
|
|
- console.log(`Heanup playPrevious - 重置时间显示状态: oldSeconds=${this.oldSeconds}, currentTime=${this.currentTime}`);
|
|
|
-
|
|
|
- // 同步到AppStorage,确保卡片能获取到最新状态
|
|
|
- AppStorage.setOrCreate('songList', this.songList);
|
|
|
- AppStorage.setOrCreate('currIndex', this.curIndex);
|
|
|
- AppStorage.setOrCreate('currentSong', currentSong);
|
|
|
|
|
|
this.changeImageAnimation();
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- LogUtils.getInstance().LOGI("LocalMusic: playPrevious completed via UnifiedPlayerService");
|
|
|
} catch (error) {
|
|
|
- LogUtils.getInstance().LOGI(`LocalMusic playPrevious error: ${error}`);
|
|
|
ToastUtil.showToast(`切换上一首失败: ${error}`);
|
|
|
|
|
|
// 错误处理:回退到原有逻辑
|
|
|
@@ -11849,9 +11735,6 @@ export struct LocalMusic {
|
|
|
this.curIndex--;
|
|
|
}
|
|
|
|
|
|
- AppStorage.setOrCreate('songList', this.songList);
|
|
|
- AppStorage.setOrCreate('currIndex', this.curIndex);
|
|
|
-
|
|
|
this.CONTROL_PlayStatus = PlayStatus.INIT;
|
|
|
this.stop();
|
|
|
this.currentSong = this.songList[this.curIndex]
|