0

I Am Making An App & I need to Refresh a Webview in 2-3 Second. how to make webview auto refresh Please post your answer with sample code. Thank you.

This is My Code ...check it

public class MainActivity extends Activity {

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

    final WebView myWebView = (WebView) findViewById(R.id.myWebView);

   The target url to surf using web view
    String url = "www.mywebsite.com";


    myWebView.loadUrl(url);



    // Enable java script on web view
    myWebView.setWebChromeClient(new WebChromeClient());
    myWebView.setWebViewClient(new WebViewClient());
    myWebView.getSettings().setJavaScriptEnabled(true);

    myWebView.getSettings().setUserAgentString("Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36");

    final String js = ""
    myWebView.setWebViewClient(new WebViewClient(){
        /*
            void onPageFinished (WebView view, String url)


        public void onPageFinished(WebView view, String url){
            super.onPageFinished(view, url);
            if(url.contains("/nextpage")) {
                myWebView.clearHistory();
                myWebView.clearCache(true);
                myWebView.clearView();
                myWebView.destroy();
                //finish();
                //System.exit(0);
            }

            if(Build.VERSION.SDK_INT >= 19){

                view.evaluateJavascript(js, new ValueCallback<String>() {
                    @Override
                    public void onReceiveValue(String s) {
                    }
                });
            }
        }
    });
}

}

Pradeep
  • 9,667
  • 13
  • 27
  • 34
  • You shouldn't have your web view auto refresh based on time. Timers in web-views is sort of taboo... It should refresh based on a trigger even if that trigger is an event from a server. – Eric Hodonsky Apr 16 '18 at 19:08

1 Answers1

0

Could you just call WebView.loadUrl() every 2-3 seconds? That's what's suggested at https://stackoverflow.com/a/2563482/2848676

To schedule the recurring refresh you could use https://developer.android.com/reference/java/util/TimerTask.html

Michael Osofsky
  • 11,429
  • 16
  • 68
  • 113