当设备进入睡眠模式时无线电流停止
Radio Stream stops when device goes to sleep mode
我有一个带有后台服务的简单应用程序,可以使用媒体播放器播放无线电流,但媒体播放器在我锁定 phone 后 2-3 分钟停止...
我的后台服务代码:
public class ServiceMusic extends Service {
MediaPlayer mediaPlayer;
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
}
@Override
public void onCreate() {
if (mediaPlayer != null) {
if (mediaPlayer.isPlaying()) {
mediaPlayer.release();
mediaPlayer = null;
}
}
mediaPlayer = new MediaPlayer();
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
try {
mediaPlayer.setDataSource(this, Uri.parse("http://188.40.62.20:8014"));
mediaPlayer.prepare();
}catch (IOException e){
Log.e("---------------","---------------------: " + e.getMessage());
}
}
@Override
public void onStart(Intent intent, int startid) {
mediaPlayer.start();
}
@Override
public void onDestroy() {
mediaPlayer.stop();
}
我已经在onCreate中写了,但它仍然停止...
PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
WakeLock wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,"MyWakelockTag");
wakeLock.acquire();
然后我添加到 mediaPlayer 唤醒模式,但这也有帮助
mediaPlayer.setWakeMode(getApplicationContext(), PowerManager.PARTIAL_WAKE_LOCK);
并且我向 android 清单文件添加了权限 WAKE_LOCK...
我希望有人能帮助我。
如果您没有使用前台服务来执行 运行 后台任务,那么服务可能会被 activity 破坏,这也会在设备锁定时发生,看看这个回答它可能对你的情况有帮助:
干杯!!
我有一个带有后台服务的简单应用程序,可以使用媒体播放器播放无线电流,但媒体播放器在我锁定 phone 后 2-3 分钟停止...
我的后台服务代码:
public class ServiceMusic extends Service {
MediaPlayer mediaPlayer;
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
}
@Override
public void onCreate() {
if (mediaPlayer != null) {
if (mediaPlayer.isPlaying()) {
mediaPlayer.release();
mediaPlayer = null;
}
}
mediaPlayer = new MediaPlayer();
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
try {
mediaPlayer.setDataSource(this, Uri.parse("http://188.40.62.20:8014"));
mediaPlayer.prepare();
}catch (IOException e){
Log.e("---------------","---------------------: " + e.getMessage());
}
}
@Override
public void onStart(Intent intent, int startid) {
mediaPlayer.start();
}
@Override
public void onDestroy() {
mediaPlayer.stop();
}
我已经在onCreate中写了,但它仍然停止...
PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
WakeLock wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK,"MyWakelockTag");
wakeLock.acquire();
然后我添加到 mediaPlayer 唤醒模式,但这也有帮助
mediaPlayer.setWakeMode(getApplicationContext(), PowerManager.PARTIAL_WAKE_LOCK);
并且我向 android 清单文件添加了权限 WAKE_LOCK...
我希望有人能帮助我。
如果您没有使用前台服务来执行 运行 后台任务,那么服务可能会被 activity 破坏,这也会在设备锁定时发生,看看这个回答它可能对你的情况有帮助:
干杯!!