mirror of
https://github.com/zoriya/react-native-omni.git
synced 2026-08-16 02:44:51 +00:00
fix(cast): add hasNext/hasPrev to cast session
This commit is contained in:
@@ -47,6 +47,7 @@ import androidx.media3.session.MediaSession
|
||||
import androidx.media3.session.MediaSessionService
|
||||
import androidx.mediarouter.app.MediaRouteChooserDialog
|
||||
import androidx.mediarouter.app.SystemOutputSwitcherDialogController
|
||||
import com.google.android.gms.cast.MediaStatus
|
||||
import com.google.android.gms.cast.framework.CastContext
|
||||
import com.google.android.gms.cast.framework.CastState
|
||||
import com.google.android.gms.cast.framework.CastStateListener
|
||||
@@ -302,6 +303,8 @@ class OmniPlayer(
|
||||
|
||||
private fun sourceOf(item: MediaItem): Source {
|
||||
val meta = item.mediaMetadata
|
||||
val status = castContext?.sessionManager?.currentCastSession
|
||||
?.remoteMediaClient?.mediaStatus
|
||||
return Source(
|
||||
src = VideoSrc(
|
||||
uri = item.localConfiguration?.uri?.toString() ?: item.mediaId,
|
||||
@@ -316,9 +319,8 @@ class OmniPlayer(
|
||||
album = meta.albumTitle?.toString(),
|
||||
artist = meta.artist?.toString(),
|
||||
imageLink = meta.artworkUri?.toString(),
|
||||
// we did not load it, we don't know what comes around it.
|
||||
hasPrev = null,
|
||||
hasNext = null,
|
||||
hasPrev = status?.isMediaCommandSupported(MediaStatus.COMMAND_QUEUE_PREVIOUS),
|
||||
hasNext = status?.isMediaCommandSupported(MediaStatus.COMMAND_QUEUE_NEXT),
|
||||
),
|
||||
mixAudio = null,
|
||||
castId = item.mediaId,
|
||||
|
||||
Reference in New Issue
Block a user