From: Yoann Lopes Date: Thu, 23 May 2013 13:15:44 +0000 (+0200) Subject: Android: release the Android media player before destroying it. X-Git-Tag: upstream/5.2.95+rc1~69^2~3 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1dfbe44d90fb0a13f67642ca61a64c91f8322e9f;p=platform%2Fupstream%2Fqtmultimedia.git Android: release the Android media player before destroying it. Change-Id: I18715efd7ff346a9f6f2214727ec66ee79ad0d33 Reviewed-by: Christian Stromme --- diff --git a/src/plugins/android/mediaplayer/qandroidmediaplayercontrol.cpp b/src/plugins/android/mediaplayer/qandroidmediaplayercontrol.cpp index 5a9c8b8..cb34fba 100644 --- a/src/plugins/android/mediaplayer/qandroidmediaplayercontrol.cpp +++ b/src/plugins/android/mediaplayer/qandroidmediaplayercontrol.cpp @@ -74,6 +74,7 @@ QAndroidMediaPlayerControl::QAndroidMediaPlayerControl(QObject *parent) QAndroidMediaPlayerControl::~QAndroidMediaPlayerControl() { + mMediaPlayer->release(); delete mMediaPlayer; } diff --git a/src/plugins/android/wrappers/jmediaplayer.cpp b/src/plugins/android/wrappers/jmediaplayer.cpp index 48e743b..f6e03ee 100644 --- a/src/plugins/android/wrappers/jmediaplayer.cpp +++ b/src/plugins/android/wrappers/jmediaplayer.cpp @@ -82,6 +82,11 @@ JMediaPlayer::~JMediaPlayer() mplayers.remove(mId); } +void JMediaPlayer::release() +{ + callMethod("release"); +} + void JMediaPlayer::onError(qint32 what, qint32 extra) { Q_EMIT error(what, extra); diff --git a/src/plugins/android/wrappers/jmediaplayer.h b/src/plugins/android/wrappers/jmediaplayer.h index f5cb117..710246b 100644 --- a/src/plugins/android/wrappers/jmediaplayer.h +++ b/src/plugins/android/wrappers/jmediaplayer.h @@ -89,6 +89,8 @@ public: MEDIA_PLAYER_FINISHED = 6 }; + void release(); + int getCurrentPosition(); int getDuration(); bool isPlaying();