问题
My code is working properly but suddenly sound is getting stop with this error "MediaPlayer finalized without being released"
My Code is
public void PLAYSOUND(MediaPlayer Player, boolean value,SOUND sound) throws IllegalArgumentException, SecurityException, IllegalStateException, IOException{
try {
AssetFileDescriptor descriptor = null;
if (Player != null) {
Player.stop();
Player.release();
Player = new MediaPlayer();
}else
Player = new MediaPlayer();
descriptor = GameManager.getInstance().getCurrentActivity().getAssets().openFd("sound/mainmenu.wav");
//AssetFileDescriptor descriptor = GameManager.getInstance().getCurrentActivity().getAssets().openFd("sound/mainmenu.wav");
Player.setDataSource(descriptor.getFileDescriptor(), descriptor.getStartOffset(), descriptor.getLength());
Player.setAudioStreamType(AudioManager.STREAM_MUSIC);
descriptor.close();
Player.prepare();
Player.setLooping(value);
if(mCheckVolumeOnOff)
Player.setVolume(2.0f, 2.0f);
else
Player.setVolume(2.0f,2.0f);
Player.start();
} catch (Exception e) {
e.printStackTrace();
}
}
I have checked that sound is not getting stop because of .stop() and .release().
来源:https://stackoverflow.com/questions/22243303/mediaplayer-finalized-without-being-released-sound-is-getting-stop