Android WebView上的Javascript不工作
我对Android WebView和Javascript有一些问题。 应用程序的一些客户表示,应用程序上的WebView没有显示任何内容。 正如我所检查的,它可能根本没有显示javascript(整个网页都是由react以javascript加载的) 我的代码是:Android WebView上的Javascript不工作,android,webview,Android,Webview,我对Android WebView和Javascript有一些问题。 应用程序的一些客户表示,应用程序上的WebView没有显示任何内容。 正如我所检查的,它可能根本没有显示javascript(整个网页都是由react以javascript加载的) 我的代码是: public void setupWebView(WebView accessWebView) { accessWebView.setWebViewClient(new WebViewClient() {
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/");
谢谢您提供的信息。不幸的是,在那种情况下这没有什么帮助。我想这可能是webview中加载的站点的问题所在。它完全是用react编写的,可以使用只能在更新的webview上使用的方法。所以现在,我建议更新WebView应用程序。