summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorYoann Lopes <yoann.lopes@digia.com>2013-05-23 15:15:44 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-07-09 09:41:17 +0200
commit1dfbe44d90fb0a13f67642ca61a64c91f8322e9f (patch)
tree89f5f9fafb5adabc7ef4604485a26b7eff357973 /src
parent1eb77d37821a42742a9b2984c89e3aed8296a5fc (diff)
Android: release the Android media player before destroying it.
Change-Id: I18715efd7ff346a9f6f2214727ec66ee79ad0d33 Reviewed-by: Christian Stromme <christian.stromme@digia.com>
Diffstat (limited to 'src')
-rw-r--r--src/plugins/android/mediaplayer/qandroidmediaplayercontrol.cpp1
-rw-r--r--src/plugins/android/wrappers/jmediaplayer.cpp5
-rw-r--r--src/plugins/android/wrappers/jmediaplayer.h2
3 files changed, 8 insertions, 0 deletions
diff --git a/src/plugins/android/mediaplayer/qandroidmediaplayercontrol.cpp b/src/plugins/android/mediaplayer/qandroidmediaplayercontrol.cpp
index 5a9c8b84f..cb34fba32 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 48e743b26..f6e03ee22 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<void>("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 f5cb11773..710246b9a 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();