【问题标题】:Android MediaPlayer automatically plays the next songAndroid MediaPlayer 自动播放下一首歌曲
【发布时间】:2013-12-05 01:05:36
【问题描述】:

我有非常基本的媒体播放器代码:

AssetFileDescriptor FileDescriptor = getAssets().openFd(musicPth);

MusicPlayer.setDataSource(FileDescriptor.getFileDescriptor());
MusicPlayer.prepare();
MusicPlayer.start();

由于某些原因,当歌曲播放完毕后,播放器会自动播放文件夹中的下一首歌曲!

我尝试了setOnCompletionListenersetLooping 功能,但似乎它们不会影响播放器,它只会转到下一首歌曲。

如果我排除第二个 mp3,则播放器会循环播放我想要的同一首歌曲。

非常奇怪的行为,我错过了什么吗?

【问题讨论】:

    标签: android audio media-player


    【解决方案1】:

    我似乎通过将setDataSource() 函数更改为这个来解决我的问题:

    AssetFileDescriptor FileDescriptor = getAssets().openFd(musicPth);
    
    MusicPlayer.setDataSource(FileDescriptor.getFileDescriptor(), 
        FileDescriptor.getStartOffset(), 
        FileDescriptor.getLength());
    
    FileDescriptor.close();
    

    【讨论】:

    • 这解决了我的许多问题。如果不设置偏移量和长度,就会发生奇怪的事情。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-04
    • 1970-01-01
    相关资源
    最近更新 更多