RemoteMediaClient tracksChooser android
This commit is contained in:
parent
e52b24861c
commit
9c8327b6ab
3 changed files with 24 additions and 3 deletions
|
|
@ -49,4 +49,7 @@ dependencies {
|
|||
// Lifecycle
|
||||
implementation "androidx.lifecycle:lifecycle-extensions:$lifecycle_version"
|
||||
implementation "androidx.lifecycle:lifecycle-common-java8:$lifecycle_version"
|
||||
|
||||
// To open TracksChooserDialogFragment
|
||||
implementation "androidx.activity:activity-ktx:1.3.1"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ package com.gianlucaparadise.flutter_cast_framework
|
|||
import android.app.Activity
|
||||
import android.content.Context
|
||||
import android.util.Log
|
||||
import androidx.fragment.app.FragmentActivity
|
||||
import androidx.lifecycle.Lifecycle
|
||||
import androidx.lifecycle.LifecycleObserver
|
||||
import androidx.lifecycle.OnLifecycleEvent
|
||||
|
|
@ -18,6 +19,7 @@ import com.google.android.gms.cast.framework.CastSession
|
|||
import com.google.android.gms.cast.framework.SessionManager
|
||||
import com.google.android.gms.cast.framework.SessionManagerListener
|
||||
import com.google.android.gms.cast.framework.media.RemoteMediaClient
|
||||
import com.google.android.gms.cast.framework.media.TracksChooserDialogFragment
|
||||
import io.flutter.embedding.engine.plugins.FlutterPlugin
|
||||
import io.flutter.embedding.engine.plugins.activity.ActivityAware
|
||||
import io.flutter.embedding.engine.plugins.activity.ActivityPluginBinding
|
||||
|
|
@ -272,6 +274,22 @@ class FlutterCastFrameworkPlugin : FlutterPlugin, MethodCallHandler, ActivityAwa
|
|||
remoteMediaClient.stop()
|
||||
}
|
||||
|
||||
override fun showTracksChooserDialog() {
|
||||
if (activity !is FragmentActivity) {
|
||||
Log.e(TAG, "Error: no_fragment_activity, FlutterCastFramework requires activity to be a FragmentActivity.")
|
||||
return
|
||||
}
|
||||
|
||||
val activity = activity as? FragmentActivity
|
||||
if (activity == null) {
|
||||
Log.d(TAG, "showTracksChooserDialog - missing context")
|
||||
return
|
||||
}
|
||||
|
||||
TracksChooserDialogFragment.newInstance()
|
||||
.show(activity.supportFragmentManager, "FlutterCastFrameworkTracksChooserDialog")
|
||||
}
|
||||
|
||||
override fun setMute(muted: Boolean?) {
|
||||
if (muted == null) return
|
||||
val castSession = mCastSession ?: return
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
package com.gianlucaparadise.flutter_cast_framework_example
|
||||
|
||||
import io.flutter.embedding.android.FlutterActivity;
|
||||
import io.flutter.embedding.android.FlutterFragmentActivity
|
||||
|
||||
class MainActivity: FlutterActivity() {
|
||||
class MainActivity: FlutterFragmentActivity() {
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue