繁体   English   中英

如何使用 Jetpack Compose Accompanist 拦截来自 WebView 的切换交互

[英]How to intercept Toggle interactions from WebView using Jetpack Compose Accompanist

我正在使用 Accompanist 库在 Android Jetpack Compose 中实现 WebView 更改。

https://google.github.io/accompanist/webview/

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

我没有看到任何添加addJavascriptInterface以拦截来自 WebView 页面的切换打开/关闭交互的示例。

AccompanistWebView 可以做到这一点吗?

请试试:

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

您可以在 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
                }
            }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM