CourseSendPlugin.kt 1.29 KB
Newer Older
严久程 committed
1 2
package com.yidianling.course.flutterPlugin

3
import com.channel.ydl_flutter_base.base.BaseFlutterFragment
4
import com.example.fm_plugin.base.FlutterFragment
严久程 committed
5 6 7 8 9 10 11 12 13 14 15 16 17 18
import io.flutter.plugin.common.EventChannel
import io.flutter.view.FlutterView

/**
 * @author jiucheng
 * @描述:
 * @Copyright Copyright (c) 2018
 * @Company 壹点灵
 * @date 2019/10/25
 */
object CourseSendPlugin {
    private var messageChannel: EventChannel? = null
    const val CHANNEL: String = "base/channel/native/post"

19
    private var mFragment: BaseFlutterFragment? = null
严久程 committed
20 21
    private var eventSink: EventChannel.EventSink? = null

22
    fun initContext(fragment: BaseFlutterFragment, view: FlutterView): CourseSendPlugin {
严久程 committed
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
        mFragment = fragment
        messageChannel = EventChannel(view, CHANNEL)
        messageChannel!!.setStreamHandler(object : EventChannel.StreamHandler {
            override fun onListen(p0: Any?, event: EventChannel.EventSink?) {
                eventSink = event
            }

            override fun onCancel(p0: Any?) {
            }
        })
        return this
    }


    fun sendMsg(isPlaying: Boolean) {
徐健 committed
38
        eventSink?.success(isPlaying)
严久程 committed
39
    }
严久程 committed
40 41


42
    fun sendRequestData() {
徐健 committed
43
        eventSink?.success("requestData")
严久程 committed
44 45
    }

46
    fun sendLoginSuccess() {
徐健 committed
47
        eventSink?.success("loginSuccess")
严久程 committed
48
    }
49

严久程 committed
50
}