我做了一个基本的电台播放器,这使得它玩低于和完美的作品除了setWakeMode方法的代码。当我将手机置于待机状态时,音频将播放长达2分钟,然后开始停止并开始播放。有任何想法吗?Android的MediaPlayer的激活锁定不工作
N.B. 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即使没有唤醒锁生存的。有任何想法吗?
事情是,我希望人们在听收音机用这个程序能够把自己的手机在待机和走动它装在口袋里,如果他们愿意的话,或者只是一般听而不在屏幕上运行了他们因此迫使屏幕继续工作并不是真正的选择。 已经添加了WAKE_LOCK权限。感谢您的贡献:) – apbarratt 2012-02-11 23:01:07
如果您只想让mediaplayer继续游戏,keepScreenOn会将一个Rocketlauncher带到刀斗中。:) – REJH 2015-10-01 10:32:13