javascript - Android webview javascript 未在所有设备上运行

标签 javascript android

我正在尝试从 android_asset 文件夹中的 Webview 中运行 javascript。并且,webview 可以在 Android[5.0] 和更高端的设备中使用 javascript。但是,在 Android[4.4.4] 及以下设备中,webview 无法使用 javascript。

那么,我们如何在所有 Android 设备的 Android Webview 中运行 javascript?

最佳答案

更改您的 WebView 设置

mWebView.setWebChromeClient(new MyWebChromeClient());
mWebView.setFocusable(true);
mWebView.setFocusableInTouchMode(true);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setPluginsEnabled(true);
mWebView.getSettings().setRenderPriority(RenderPriority.HIGH);
mWebView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
mWebView.getSettings().setDomStorageEnabled(true);
mWebView.getSettings().setDatabaseEnabled(true);
mWebView.getSettings().setAppCacheEnabled(true);
mWebView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);

public class MyWebChromeClient extends WebChromeClient {
    //Handle javascript alerts:
    @Override
public boolean onJsAlert(WebView view, String url, String message, final android.webkit.JsResult result)  
{
  Log.d("alert", message);
  Toast.makeText(context, message, 3000).show();
  result.confirm();
  return true;
};

关于javascript - Android webview javascript 未在所有设备上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37453656/

相关文章:

javascript - 如何在 ionic 中使用 state.go?

javascript - 如何检测wp_editor的变化?

javascript - 无法在图像源之间切换

android - 为什么 YouTube 视频以横向模式播放而不是(垂直)纵向模式?

java - 开始时带有按钮的布局

java - 有没有更快的方法来比较数字是否在范围内?

javascript - 避免 jQuery 代码重复

javascript - 无法在订阅主体内的 setState Hook 中调用先前状态的对象方法

android - 在 Flutter 中实现视频提要的最佳方式是什么?

java - Android TCP 客户端/服务器未正确传递消息(仅首次收到)