Метод onPageFinished () не вызывается в веб-представлении в Android - PullRequest
0 голосов
/ 17 октября 2018

Когда я использую этот конкретный URL = realtor.com

onPageFinished () работает , но , когда я нажимаю поиск кнопка этот URL onPageFinished не работает только из-за данных, поступающих через javascript

 **WebActivity.java** 

    @Override
    protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_web);

            WebView  webView = (WebView) findViewById(R.id.webview1);
            webView.setWebChromeClient(new WebChromeClient() {   });
            WebSettings webSettings = webView.getSettings();
            webSettings.setJavaScriptEnabled(true);
            webSettings.setJavaScriptCanOpenWindowsAutomatically(true);
            webView.addJavascriptInterface(new MyJavaScriptInterface(),"android");

            webView.loadUrl("https://www.realtor.com");

            webView.setWebViewClient(new WebViewClient() {
                    @Override
                    public void onPageStarted(WebView view, String url, Bitmap favicon) {
                            super.onPageStarted(view, url, favicon);
                            Log.d("=====", "====Start  " + url);
                    }

                    @Override
                    public void onPageFinished(WebView view, String url) {
                            super.onPageFinished(view, url);
                            Log.d("=====", "=======Finish  " + url);
                            view.loadUrl("javascript:window.android.onUrlChange(window.location.href);");

                    }

                    @Override
                    public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
                            Log.d("=====", "====shouldOverrideUrlLoading  " + view.getUrl());
                            return super.shouldOverrideUrlLoading(view, request);
                    }
            });
    }
    class MyJavaScriptInterface {
            @JavascriptInterface
            public void onUrlChange(String url) {
                    Log.d("hydrated", "onUrlChange" + url);
            }
    }

}

моя проблема Я просто хочу получить свой текущийURL в любом случае, и мне нужно знать, что моя страница изменилась

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...