我制作了一个基本的收音机播放器,使其播放的代码如下,除了 setWakeMode 方法外,它运行良好。当我将手机置于待机状态时,音频将正常播放长达 2 分钟,然后开始停止和启动。有任何想法吗?
NB radioPlayer 是 MediaPlayer 的一个实例。
public boolean startRadio()
{
try
{
String url = getString(R.string.radioURL); // Radio url.
radioPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
radioPlayer.setDataSource(url);
radioPlayer.prepare(); // might take long! (for buffering, etc)
radioPlayer.setWakeMode(this.getApplicationContext(), PowerManager.PARTIAL_WAKE_LOCK);
radioPlayer.start();
return true;
}
catch(Exception e)
{
showAlert(getString(R.string.error), getString(R.string.radioError));
radioPlayer.release();
radioPlayer = new MediaPlayer();
return false;
}
}
更新:在查看了其他地方的另一个帖子后,我发现这个问题似乎是 HTC 手机独有的,事实上,我的三星 Galaxy Tab 甚至在没有唤醒锁的情况下也能存活。有任何想法吗?