Я использую служебную музыку BackGroundSound, но когда я нажимаю кнопку «Домой» или кнопку питания или выхожу из приложения, музыка просто не останавливается, и мне нужно, чтобы она остановилась. У кого-нибудь есть предложения / идеи, как это исправить? Я использовал этот гайд https://www.simplifiedcoding.net/android-service-example/
public class Backgroundsoundservice 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.backgroundmusic01);
player.setLooping(true); // Set looping
player.setVolume(100,100);
}
@SuppressLint("WrongConstant")
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() {
player.stop();
}
public void onPause()
{
player.pause();
}
@Override
public void onDestroy() {
player.stop();
player.release();
}
@Override
public void onLowMemory() {
}
}
Попробуйте переопределить onPause вот так.
@Override
protected void onPause() {
super.onPause();
if (mediaPlayer != null){
mediaPlayser.stop();
if (isFinishing()){
mediaPlayer.stop();
mediaPlayer.release();
}
}
}