Added qDebugs and create instance of MediaSessionClient.

This commit is contained in:
Swapnil Tripathi 2021-08-15 23:55:39 +05:30 committed by Tobias Fella
parent 1ae780fe63
commit deb8cac131
4 changed files with 31 additions and 13 deletions

View File

@ -7,7 +7,7 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.kde.kasts"
android:versionName="0.0.1"
android:versionCode="1628978137"
android:versionCode="1629047915"
android:installLocation="auto">
<supports-screens android:largeScreens="true" android:normalScreens="true" android:anyDensity="true" android:smallScreens="true"/>

View File

@ -34,6 +34,12 @@ public class KastsActivity extends QtActivity
{
private static final String TAG = "org.kde.kasts.mediasession";
private static native void playerPlay();
private static native void playerPause();
private static native void playerStop();
private static native void playerNext();
private static native void playerSeek(long position);
class MediaData {
public String title;
public String author;
@ -175,7 +181,7 @@ public class KastsActivity extends QtActivity
mSession.setActive(true);
play();
playerPlay();
//Update variables of mediaData;
activity.updateNotification();
@ -258,10 +264,4 @@ public class KastsActivity extends QtActivity
activity.updateNotification();
}
private static native void play();
private static native void pause();
private static native void stop();
private static native void next();
private static native void seek(long position);
}

View File

@ -15,37 +15,42 @@ static void play(JNIEnv *env, jobject thiz)
{
Q_UNUSED(env)
Q_UNUSED(thiz)
qDebug() << "JAVA play() working.";
// audio manager play
}
static void pause(JNIEnv *env, jobject thiz)
{
Q_UNUSED(env)
Q_UNUSED(thiz)
qDebug() << "JAVA pause() working.";
// audio manager pause
}
static void stop(JNIEnv *env, jobject thiz)
{
Q_UNUSED(env)
Q_UNUSED(thiz)
qDebug() << "JAVA stop() working.";
//audio manager previous
}
static void next(JNIEnv *env, jobject thiz)
{
Q_UNUSED(env)
Q_UNUSED(thiz)
qDebug() << "JAVA next() working.";
// audio manager next
}
static void seek(JNIEnv *env, jobject thiz, jlong position)
{
Q_UNUSED(env)
Q_UNUSED(thiz)
qDebug() << "JAVA seek() working.";
// implement seek
}
static const JNINativeMethod methods[] {{"play", "()V", reinterpret_cast<void *>(play)},
{"pause", "()V", reinterpret_cast<void *>(pause)},
{"stop", "()V", reinterpret_cast<void *>(stop)},
{"next", "()V", reinterpret_cast<void *>(next)},
{"seek", "(J)V", reinterpret_cast<void *>(seek)}};
static const JNINativeMethod methods[] {{"playerPlay", "()V", reinterpret_cast<void *>(play)},
{"playerPause", "()V", reinterpret_cast<void *>(pause)},
{"playerStop", "()V", reinterpret_cast<void *>(stop)},
{"playerNext", "()V", reinterpret_cast<void *>(next)},
{"playerSeek", "(J)V", reinterpret_cast<void *>(seek)}};
Q_DECL_EXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *)
{
@ -67,10 +72,13 @@ Q_DECL_EXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *)
return JNI_VERSION_1_4;
}
MediaSessionClient* MediaSessionClient::s_instance = nullptr;
MediaSessionClient::MediaSessionClient(AudioManager *audioPlayer, QObject *parent)
: QObject(parent)
, m_audioPlayer(audioPlayer)
{
s_instance = this;
connect(m_audioPlayer, &AudioManager::playbackStateChanged, this, &MediaSessionClient::setSessionPlaybackState);
// Sets the current playback state.
connect(m_audioPlayer, &AudioManager::entryChanged, this, &MediaSessionClient::setSessionMetadata);
@ -89,6 +97,11 @@ MediaSessionClient::MediaSessionClient(AudioManager *audioPlayer, QObject *paren
// Sets the playback to stopped.
}
MediaSessionClient* MediaSessionClient::instance()
{
return s_instance;
}
void MediaSessionClient::setSessionPlaybackState()
{
qDebug() << "MediaSessionClient::setSessionPlaybackState called with state value = " << m_audioPlayer->playbackState();

View File

@ -16,6 +16,10 @@ class MediaSessionClient : public QObject
{
public:
explicit MediaSessionClient(AudioManager *audioPlayer, QObject *parent = nullptr);
static MediaSessionClient* instance();
Q_SIGNALS:
void play();
private Q_SLOTS:
void setSessionPlaybackState();
@ -26,4 +30,5 @@ private Q_SLOTS:
private:
AudioManager *m_audioPlayer = nullptr;
static MediaSessionClient *s_instance;
};