背景音乐在应该播放时不会关闭或打开

时间:2016-12-24 10:01:32

标签: android service media-player

我有一项服务,在我的所有活动中播放背景音乐,但在onPause或onStop时却没有关闭。我希望我的音乐在应用关闭或屏幕关闭时关闭,无论当前哪种活动使用者都无关紧要。 问题是这样的: 我有服务。在每个活动中,我编写了关于onPause和onStop的操作。它工作正常,但当我切换到另一个活动时,服务也会停止。

代码:

public class MyService extends Service {


private final String TAG = null;
MediaPlayer player;

public IBinder onBind(Intent arg0) {

    return null;
}

@Override
public void onCreate() {
    super.onCreate();
    player = MediaPlayer.create(this, R.raw.id);
    player.setLooping(true); // Set looping
    player.setVolume(100, 100);




}

public int onStartCommand(Intent intent, int flags, int startId) {
    player.start();
    return 1;
}

public void onStart(Intent intent, int startId) {
    // TO DO
}

public IBinder onUnBind(Intent arg0) {
    // TO DO Auto-generated method
    return null;
}


protected void onStop() {
    player.pause();
}

public void onPause() {
    player.pause();
}

@Override
public void onDestroy() {
    player.stop();
    player.release();
}

@Override
public void onLowMemory() {

}

}

1 个答案:

答案 0 :(得分:0)

您必须在主要活动的onDestroy方法中停止服务。查看this answer