如何在应用程序在后台运行时暂停背景音乐

时间:2017-07-04 14:36:46

标签: android service android-mediaplayer

我创建了一个游戏。我在应用程序中添加了一些背景音乐,现在我想在使用主页按钮退出应用程序时暂停音乐,并且当从多任务打开时,歌曲应该恢复。

package tssll8.coloursmash;

import android.app.Service;
import android.content.Intent;
import android.media.MediaPlayer;
Import android.os.IBinder;

/**
 * Created by ciddarth on 04/07/17.
 */

public class bgmusic extends Service {
private static 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.bg);
    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;
}

public void onStop() {

}
public void onPause() {

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

@Override
public void onLowMemory() {

}
}

1 个答案:

答案 0 :(得分:1)

Mediaplayer有一个pause()方法:MediaPlayer#pause()

所以你可以在按下主页按钮触发的暂停时调用它,就像这样

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

并在onResume中恢复它,如下所示:

public void onResume() {
    player.play();
}