android webview loadurl本地,Android WebView 使用loadUrl方法执行本地JavaScript
X
隱私和 Cookie
此站點使用 Cookie。繼續(xù)即表示您同意它們使用 Cookie。了解更多信息,包括如何使用 Cookie。
知道了!
廣告
因為Android的WebView類沒有像Qt里面的QWebFrame,有一個類似evaluateJavaScript的方法,所以一直以來我都以為Android沒辦法像Qt一樣,可以在加載遠程網(wǎng)頁之后再注入本地的JavaScript在當前網(wǎng)頁內(nèi)部的JavaScript虛擬機中運行。而注入本地JavaScript的能力對編寫一些Web&Native Hybird App還是很有幫助的。
剛好今天看了Android Developer的一篇文章:Introducing Android WebDriver,介紹了WebDriver的使用,發(fā)現(xiàn)WebDriver可以在某種程度上在Java端操作頁面內(nèi)的DOM樹,所以很好奇它實現(xiàn)的機制。跟蹤了一下源碼發(fā)現(xiàn),WebDriver是通過loadUrl方法將一段JavaScript注入已經(jīng)加載的頁面內(nèi)執(zhí)行,Url使用javascript schema,就是類似javascript:…code…這樣的語句,再通過WebView對在JavaScript虛擬機內(nèi)訪問綁定的Java對象的支持,把DOM樹的數(shù)據(jù)暴露給外部的Java代碼,達成Java和JavaScript之間的互相通信。
既然WebView提供了這樣的支持,在Android平臺上基于WebView編寫Hybird App就更容易了。
廣告
總結(jié)
以上是生活随笔為你收集整理的android webview loadurl本地,Android WebView 使用loadUrl方法执行本地JavaScript的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android 文件读取错误,Andro
- 下一篇: 支付宝转账免费额度用完了怎么办