gpt4 book ai didi

javascript - 如何将 javascript 重定向加载到 android webview 中?

转载 作者:行者123 更新时间:2023-11-28 07:17:47 25 4
gpt4 key购买 nike

我正在尝试将页面加载到 webview 中。通常,当我打电话时

webview.loadUrl(url);

效果很好。该 url 包含重定向页面的 JavaScript 代码。这是 jacascript 代码:

<script type="text/javascript">
if (!document.cookie || document.cookie.indexOf('AVPDCAP=') == -1)
{ document.write('<scr'+'ipt src="http://some_link_here+Math.floor(89999999*Math.random()+10000000)+'&millis='+new Date().getTime()+'&referrer='+encodeURIComponent(document.location)+'" type="text/javascript"></scr'+'ipt>'); }
</script>

当我尝试将 javascript 代码加载到我的 web View 中时,如下所示:

String data = javascript_code_above;
topBannerWV.loadDataWithBaseURL("", data, "text/html", "UTF-8", null);

其中 data 是这段 JavaScript 代码,它不会加载页面。我还尝试了以下方法:

topBannerWV.loadDataWithBaseURL("", data, "text/javascript", "UTF-8", null);

但这一次文本被加载到 webview 中。谁能帮我解决这个问题吗?

谢谢。

最佳答案

我正在做这样的事情,它工作得很好:

 webView.loadUrl("file:///android_asset/html.html");
webView.setWebViewClient(new WebViewClient() {

public void onPageFinished(WebView view, String url) {
try {
webView.loadUrl("javascript:init('" + some parameter + "')");

} catch (JSONException e) {
e.printStackTrace();
}
}
});

html 文件中的脚本是:

<script type="text/javascript">
function init(val){
document.getElementById('content').innerHTML=val;
}
window.addEventListener('load',function(){
console.log("Window Loader");
init();
});
</script>

关于javascript - 如何将 javascript 重定向加载到 android webview 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30660421/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com