当设备进入睡眠模式时,无线电流停止

时间:2018-02-09 09:10:30

标签: android sleep wakeup

我有一个简单的应用程序,后台服务与媒体播放器播放无线电流,但媒体播放器在我锁定手机后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);

并且我向Windows清单文件添加了WAKE_LOCK权限...

我希望有人可以帮助我。

1 个答案:

答案 0 :(得分:0)

如果你没有使用前台服务来运行后台任务,那么服务可能会被活动破坏,这也会在设备锁定时发生,看看这个答案可能会对你的情况有所帮助:

Cannot keep android service alive after app is closed

干杯!!