android 如何使用Jetpack Compose Companist从WebView拦截切换交互

new9mtju  于 2023-01-11  发布在  Android
关注(0)|答案(1)|浏览(163)

我正在使用伴奏库来实现Android Jetpack合成中的WebView更改。
https://google.github.io/accompanist/web/

WebView(
                state = state,
                modifier = Modifier.weight(1f),
                onCreated = { webView ->
                    webView.settings.javaScriptEnabled = true
                },
                client = webClient
            )

我没有看到任何添加addJavascript接口以拦截WebView页面中的开关交互的示例。
这是否可以通过CompanistWebView实现?

6tdlim6h

6tdlim6h1#

您可以在webView上使用控制台消息来观察操作:

val currentWebView: WebView? = null
            WebView(
                state = state,
                modifier = Modifier.weight(1f),
                onCreated = { webView ->
                    currentWebView = webView
                    webView.settings.javaScriptEnabled = true
                },
                client = webClient
            )

            currentWebView?.webChromeClient = object : WebChromeClient() {
                override fun onConsoleMessage(consoleMessage: ConsoleMessage):Boolean {
                    // Observer messages here
                    return true
                }
            }

相关问题