Android: MediaPlayer завершен без выхода
я использую класс MediaPlayer в приложении, которое ям в данный момент работаю над. Я хочу держаться за экземпляр класса MediaPlayer на протяжении всей моей активности. Я'm освобождая ресурсы из класса MediaPlayer в методе onPause () {} действия, однако при запуске действия я вижу следующее предупреждение в окне LogCat:
W/MediaPlayer-JNI(16795): MediaPlayer finalized without being released
Любая идея, что яя делаю неправильно здесь или как убрать это предупреждение? Это неЭто, кажется, вызывает какие-либо проблемы, и звук работает просто отлично.
У меня слишком много кода для публикации, потому что я обернул несколько объектов, чтобы можно было управлять состоянием (класс MediaPlayer не 'в настоящее время предоставляют информацию о состоянии), а также различные другие причины, но код в значительной степени:
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
initialiseSounds(this);
}
@Override
protected void onPause()
{
soundManager.releaseResources();
}
@Override
protected void onResume()
{
initialiseSounds(this);
}
С помощью этого метода в моем классе SoundManager:
public void releaseResources()
{
player.release();
}
И в исходных звуках яя делаю:
MediaPlayer player = new MediaPlayer();
player.reset();
player.setAudioStreamType(AudioManager.STREAM_MUSIC);
AssetFileDescriptor assetFileDescriptor = context.getResources().openRawResourceFd(resourceId);
setDataSource(player, assetFileDescriptor);
Когда я хочу сыграть трек, я делаю:
player.prepare();
player.start();
Ценю любые советы,
Спасибо,