Fix intents
This commit is contained in:
parent
5916676009
commit
11b83ddf30
@ -7,7 +7,7 @@
|
|||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
package="org.kde.kasts"
|
package="org.kde.kasts"
|
||||||
android:versionName="0.0.1"
|
android:versionName="0.0.1"
|
||||||
android:versionCode="1629061325"
|
android:versionCode="1629136369"
|
||||||
android:installLocation="auto">
|
android:installLocation="auto">
|
||||||
|
|
||||||
<supports-screens android:largeScreens="true" android:normalScreens="true" android:anyDensity="true" android:smallScreens="true"/>
|
<supports-screens android:largeScreens="true" android:normalScreens="true" android:anyDensity="true" android:smallScreens="true"/>
|
||||||
@ -57,6 +57,11 @@
|
|||||||
<!-- auto screen scale factor -->
|
<!-- auto screen scale factor -->
|
||||||
<meta-data android:name="android.app.auto_screen_scale_factor" android:value="true"/>
|
<meta-data android:name="android.app.auto_screen_scale_factor" android:value="true"/>
|
||||||
</activity>
|
</activity>
|
||||||
|
<receiver android:name="org.kde.kasts.Receiver">
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="android.intent.action.MEDIA_BUTTON" />
|
||||||
|
</intent-filter>
|
||||||
|
</receiver>
|
||||||
</application>
|
</application>
|
||||||
|
|
||||||
</manifest>
|
</manifest>
|
||||||
|
@ -53,7 +53,7 @@ public class KastsActivity extends QtActivity
|
|||||||
|
|
||||||
static MediaData mediaData;
|
static MediaData mediaData;
|
||||||
|
|
||||||
private static MediaSessionCompat mSession;
|
static MediaSessionCompat mSession;
|
||||||
private static PlaybackStateCompat.Builder mPBuilder;
|
private static PlaybackStateCompat.Builder mPBuilder;
|
||||||
private static KastsActivity activity;
|
private static KastsActivity activity;
|
||||||
|
|
||||||
@ -82,32 +82,31 @@ public class KastsActivity extends QtActivity
|
|||||||
//TODO Image
|
//TODO Image
|
||||||
mSession.setMetadata(metadata.build());
|
mSession.setMetadata(metadata.build());
|
||||||
|
|
||||||
Intent iPlay = new Intent(this, MediaSessionCallback.class);
|
Intent iPlay = new Intent(this, Receiver.class);
|
||||||
iPlay.setAction("ACTION_PLAY");
|
iPlay.setAction("ACTION_PLAY");
|
||||||
PendingIntent piPlay = PendingIntent.getBroadcast(this, 0, iPlay, PendingIntent.FLAG_UPDATE_CURRENT);
|
PendingIntent piPlay = PendingIntent.getBroadcast(this, 0, iPlay, PendingIntent.FLAG_UPDATE_CURRENT);
|
||||||
NotificationCompat.Action.Builder aPlay = new NotificationCompat.Action.Builder(
|
NotificationCompat.Action.Builder aPlay = new NotificationCompat.Action.Builder(
|
||||||
R.drawable.ic_play_white, "Play", piPlay);
|
R.drawable.ic_play_white, "Play", piPlay);
|
||||||
|
|
||||||
Intent iPause = new Intent(this, MediaSessionCallback.class);
|
Intent iPause = new Intent(this, Receiver.class);
|
||||||
iPause.setAction("ACTION_PAUSE");
|
iPause.setAction("ACTION_PAUSE");
|
||||||
PendingIntent piPause = PendingIntent.getBroadcast(this, 0, iPause, PendingIntent.FLAG_UPDATE_CURRENT);
|
PendingIntent piPause = PendingIntent.getBroadcast(this, 0, iPause, PendingIntent.FLAG_UPDATE_CURRENT);
|
||||||
NotificationCompat.Action.Builder aPause = new NotificationCompat.Action.Builder(
|
NotificationCompat.Action.Builder aPause = new NotificationCompat.Action.Builder(
|
||||||
R.drawable.ic_pause_white, "Pause", piPause);
|
R.drawable.ic_pause_white, "Pause", piPause);
|
||||||
|
|
||||||
Intent iPrevious = new Intent(this, MediaSessionCallback.class);
|
Intent iPrevious = new Intent(this, Receiver.class);
|
||||||
iPrevious.setAction("ACTION_PREVIOUS");
|
iPrevious.setAction("ACTION_PREVIOUS");
|
||||||
PendingIntent piPrevious = PendingIntent.getBroadcast(this, 0, iPrevious, PendingIntent.FLAG_UPDATE_CURRENT);
|
PendingIntent piPrevious = PendingIntent.getBroadcast(this, 0, iPrevious, PendingIntent.FLAG_UPDATE_CURRENT);
|
||||||
NotificationCompat.Action.Builder aPrevious = new NotificationCompat.Action.Builder(
|
NotificationCompat.Action.Builder aPrevious = new NotificationCompat.Action.Builder(
|
||||||
R.drawable.ic_previous_white, "Previous", piPrevious);
|
R.drawable.ic_previous_white, "Previous", piPrevious);
|
||||||
|
|
||||||
Intent iNext = new Intent(this, MediaSessionCallback.class);
|
Intent iNext = new Intent(this, Receiver.class);
|
||||||
iNext.setAction("ACTION_NEXT");
|
iNext.setAction("ACTION_NEXT");
|
||||||
PendingIntent piNext = PendingIntent.getBroadcast(this, 0, iNext, PendingIntent.FLAG_UPDATE_CURRENT);
|
PendingIntent piNext = PendingIntent.getBroadcast(this, 0, iNext, PendingIntent.FLAG_UPDATE_CURRENT);
|
||||||
NotificationCompat.Action.Builder aNext = new NotificationCompat.Action.Builder(
|
NotificationCompat.Action.Builder aNext = new NotificationCompat.Action.Builder(
|
||||||
R.drawable.ic_next_white, "Next", piNext);
|
R.drawable.ic_next_white, "Next", piNext);
|
||||||
|
|
||||||
Intent iOpenActivity = new Intent(this, KastsActivity.class);
|
Intent iOpenActivity = new Intent(this, KastsActivity.class);
|
||||||
iOpenActivity.putExtra("deviceId", "device");
|
|
||||||
|
|
||||||
NotificationCompat.Builder notification = new NotificationCompat.Builder(this, "media_control");
|
NotificationCompat.Builder notification = new NotificationCompat.Builder(this, "media_control");
|
||||||
notification
|
notification
|
||||||
@ -118,7 +117,8 @@ public class KastsActivity extends QtActivity
|
|||||||
.setContentTitle(mediaData.title)
|
.setContentTitle(mediaData.title)
|
||||||
.setSmallIcon(this.getApplicationInfo().icon)
|
.setSmallIcon(this.getApplicationInfo().icon)
|
||||||
.setChannelId("org.kde.kasts.channel")
|
.setChannelId("org.kde.kasts.channel")
|
||||||
.setContentText("Unknown");
|
.setContentText("Unknown")
|
||||||
|
.setContentIntent(PendingIntent.getActivity(this, 0, iOpenActivity, 0));
|
||||||
|
|
||||||
notification.addAction(aPrevious.build());
|
notification.addAction(aPrevious.build());
|
||||||
if(mediaData.state == 0)
|
if(mediaData.state == 0)
|
||||||
@ -184,12 +184,6 @@ public class KastsActivity extends QtActivity
|
|||||||
}
|
}
|
||||||
|
|
||||||
playerPlay();
|
playerPlay();
|
||||||
|
|
||||||
//Update variables of mediaData;
|
|
||||||
activity.updateNotification();
|
|
||||||
|
|
||||||
//JNI to audiomanager play
|
|
||||||
//setPlaybackState for mSession
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
22
android/src/org/kde/kasts/Receiver.java
Normal file
22
android/src/org/kde/kasts/Receiver.java
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
package org.kde.kasts;
|
||||||
|
|
||||||
|
import android.content.Intent;
|
||||||
|
import android.content.Context;
|
||||||
|
import android.content.BroadcastReceiver;
|
||||||
|
import android.util.Log;
|
||||||
|
|
||||||
|
public class Receiver extends BroadcastReceiver {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onReceive(Context context, Intent intent) {
|
||||||
|
if (Intent.ACTION_MEDIA_BUTTON.equals(intent.getAction())) {
|
||||||
|
KastsActivity.mSession.getController().dispatchMediaButtonEvent(intent.getParcelableExtra(Intent.EXTRA_KEY_EVENT));
|
||||||
|
} else {
|
||||||
|
switch(intent.getAction()) {
|
||||||
|
case "ACTION_PLAY":
|
||||||
|
Log.d("kasts", "play");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user