Auto.js与webview通信

"ui";

importClass(android.webkit.WebSettings)
ui.layout(
  <vertical id="main">
    <scroll>
      <webview id="webView" />
    </scroll>
  </vertical>
)
var webView = ui.webView
var url = "http://192.168.1.21:8000/webView.html"
/* -------------------------------settings------------------------------------------- */
var settings = webView.getSettings()
settings.setJavaScriptEnabled(true) // 设置是否支持js
settings.setSupportZoom(false)
settings.setAllowFileAccessFromFileURLs(false)
settings.setAllowUniversalAccessFromFileURLs(false)

var WebChromeClient = android.webkit.WebChromeClient
var webChromeClient = new JavaAdapter(WebChromeClient, {
  onConsoleMessage(consoleMessage) {
    let message = consoleMessage.message()
    console.log(message)
  },
  onReceivedTitle(instance, title) {
    console.log(title)
    instance.evaluateJavascript(`;document.querySelector('#p').innerText = '${title}'`, ret => {
      console.log(ret)
    })
  },
})
webView.setWebChromeClient(webChromeClient)

webView.loadUrl(url)
<!DOCTYPE html>
<html lang="zh-CN">
  <head>
    <title>autojs与webview通信</title>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/4.3.1/css/bootstrap.min.css" />
    <script src="https://cdn.staticfile.org/jquery/3.2.1/jquery.min.js"></script>
    <script src="https://cdn.staticfile.org/popper.js/1.15.0/umd/popper.min.js"></script>
    <script src="https://cdn.staticfile.org/twitter-bootstrap/4.3.1/js/bootstrap.min.js"></script>
  </head>
  <body>
    <h2>autojs与webview通信</h2>
    <div class="container-fluid">
      <div id="dateTime"></div>
    </div>
    <button onclick="clickButton()">click</button>

    <p id="p"></p>

    <script>
      function clickButton() {
        console.log('click button')
        document.title = 'click title'
      }
    </script>
  </body>
</html>
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐