gpt4 book ai didi

android - Android WebView 上的 Javascript 无法正常工作

转载 作者:行者123 更新时间:2023-11-29 01:06:22 25 4
gpt4 key购买 nike

我在使用 Android WebView 和 Javascript 时遇到了一些问题。一些应用程序的客户说应用程序上的 WebView 没有显示任何内容。正如我所检查的那样 - 它可能根本没有显示 javascript(整个网页都是通过 react 在 javascript 中加载的)。

我的代码:

    public void setupWebView(WebView accessWebView) {
accessWebView.setWebViewClient(new WebViewClient() {

@SuppressWarnings("deprecation")
@Override
public boolean shouldOverrideUrlLoading(WebView webView, String url) {
handleRedirect(accessWebView);
return true;
}

});
accessWebView.getSettings().setJavaScriptEnabled(true);
accessWebView.getSettings().setDomStorageEnabled(true);
accessWebView.loadUrl(URL);

(由于重定向处理,我必须使用 WebViewClient,而不是 WebChromeClient)

是否有任何可能进行更改,以便 javascript 将加载到每台装有 Android +5.0 的设备上?是否有可能在设备上更新 WebView 会对某些用户有所帮助?

最佳答案

您需要使用 setWebChromeClient 在您的 WebView 中启用 javascript。不过不用担心,您可以同时使用 setWebChromeClient 和 setWebViewClient。就像在官方文档中一样:

  // Let's display the progress in the activity title bar, like the
// browser app does.
getWindow().requestFeature(Window.FEATURE_PROGRESS);

webview.getSettings().setJavaScriptEnabled(true);

final Activity activity = this;
webview.setWebChromeClient(new WebChromeClient() {
public void onProgressChanged(WebView view, int progress) {
// Activities and WebViews measure progress with different scales.
// The progress meter will automatically disappear when we reach 100%
activity.setProgress(progress * 1000);
}
});
webview.setWebViewClient(new WebViewClient() {
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
Toast.makeText(activity, "Oh no! " + description, Toast.LENGTH_SHORT).show();
}
});

webview.loadUrl("https://developer.android.com/");

https://developer.android.com/reference/android/webkit/WebView.html

关于android - Android WebView 上的 Javascript 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46826117/

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