@Override
        public void onProgressChanged(WebView view, int newProgress) {

            if (newProgress > 80) {
                try {
                    InputStream is = view.getContext().getAssets()
                            .open("WebViewJavascriptBridge.js");
                    int size = is.available();
                    byte[] buffer = new byte[size];
                    is.read(buffer);
                    is.close();
                    String js = new String(buffer);
                    evaluateJavascript(js);
//                    evaluateJavascript("file:///android_asset/WebViewJavascriptBridge.js");
//                    loadUrl("javascript:(\"file:///android_asset/WebViewJavascriptBridge.js\")()");
                } catch (IOException e) {
                    e.printStackTrace();
                }

                synchronized (WVJBWebView.this) {
                    if (startupMessageQueue != null) {
                        for (int i = 0; i < startupMessageQueue.size(); i++) {
                            dispatchMessage(startupMessageQueue.get(i));
                        }
                        startupMessageQueue = null;
                    }
                }
            }

            if (webChromeClient != null) {
                webChromeClient.onProgressChanged(view, newProgress);
            } else {
                super.onProgressChanged(view, newProgress);
            }
        }
This method can be called in any thread, and if it is not called in the main thread,
it will be automatically distributed to the main thread.

@param url
@param additionalHttpHeaders
app/src/main/java/com/example/jingbin/webviewstudy/view/WVJBWebView.java