Android MediaPlayer.getCurrentPosition未更新

use*_*548 5 streaming mp3 android media-player

我使用MediaPlayer类跟随Igor Khrupin关于在Android中流式播放mp3文件的教程:http://www.hrupin.com/2011/02/example-of-streaming-mp3-mediafile-with-android-mediaplayer-class

除了搜索栏的主要进度未正确更新外,这一切都正常.它在开始之后就停止了.在调试它时,我可以看到MediaPlayer.getCurrentPosition()方法总是返回261(毫秒),即使mp3歌曲播放正常.

有没有人遇到过这个问题或有任何关于如何解决它的想法?

非常感谢

use*_*548 0

我在这里发现了问题。首先,我运行的模拟器没有打开音频,所以我需要在 Eclipse 的 AVD 管理器中添加启用音频的布尔值。没有打开音频是导致它总是返回 261 毫秒的原因。还有第二个问题。请参阅下面的 2 个代码片段。第一个是我的代码,第二个是教程中的代码。有一个微妙的差异(括号的数量)导致第一个始终评估为 0。

seekBarProgress.setProgress((int)((float) mediaPlayer.getCurrentPosition() / getMp3Duration()) * 100);

seekBarProgress.setProgress((int) (((float) mediaPlayer.getCurrentPosition() / getMp3Duration()) * 100));
Run Code Online (Sandbox Code Playgroud)