如何为WebView类实现OnClick侦听器

时间:2020-10-30 02:30:45

标签: java android android-studio onclicklistener android-videoview

我正在尝试为WebView中的类实现OnClick事件,该事件将在触发OnClick时打开android内部视频播放器。此外,它需要获取将要播放的视频并在Android视频播放器中播放。谢谢您的任何帮助。

1 个答案:

答案 0 :(得分:0)

使用JavascriptInterface

class MyActivity : AppCompatActivity() {
    @SuppressLint("SetJavaScriptEnabled")
    override fun onCreate(savedInstanceState: Bundle?) {
        //...
        webView.settings.javaScriptEnabled = true
        webView.addJavascriptInterface(MyJavascriptInterface(this), "Android")
    }

    class MyJavascriptInterface(private val context: Context) {
        @JavascriptInterface
        fun showVideoPlayer(url: String) {
            // TODO: show video player using url.
        }
    }
}

然后,在javascript端调用JavascriptInterface函数。

<script>
    function showAndroidVideoPlayer(url) {
        Android.showVideoPlayer(url);
    }
</script>

<button onClick="showAndroidVideoPlayer('https://example.com')">Click me!</button>