0

I'm developing a webview application in android. In chrome or other browser when i click on any link which has link to pdf file will be open in new tab or download the file. But in android webview when i click on that link there is nothing happen. Here is my code...

package aneridevelopers.com.govtofgaurang;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.FrameLayout;
import android.widget.ProgressBar;

public class MainActivity extends AppCompatActivity {

private String WebAddress = "http://www.govtofgaurang.com/";
String url = WebAddress;
String loadUrl = WebAddress;
private WebView webView;
private ProgressBar progressBar;
private FrameLayout frameLayout;

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

    frameLayout = (FrameLayout) findViewById(R.id.frameLayout);
    progressBar = (ProgressBar) findViewById(R.id.progressBar);
    progressBar.setMax(100);
    webView = (WebView) findViewById(R.id.webView);

    webView.setWebViewClient(new HelpClient());

    webView.setWebChromeClient(new WebChromeClient(){
        public void onProgressChanged(WebView view, int progress){
            frameLayout.setVisibility(View.VISIBLE);
            progressBar.setProgress(progress);

            setTitle("Loading...");

            if(progress == 100){
                frameLayout.setVisibility(View.GONE);
                setTitle(view.getTitle());
            }
            super.onProgressChanged(view, progress);
        }
    });

    webView.getSettings().setJavaScriptEnabled(true);
    webView.setVerticalScrollBarEnabled(false);
    webView.loadUrl(WebAddress);
    progressBar.setProgress(0);
}
private class HelpClient extends WebViewClient{
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        view.loadUrl(url);
        frameLayout.setVisibility(View.VISIBLE);
        return true;
    }
}

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK){
        if(webView.canGoBack()){
            webView.goBack();
            return true;
        }

    }
    return super.onKeyDown(keyCode, event);
}
}

Please help me... I'm new in Android.

Gowthaman M
  • 8,057
  • 8
  • 35
  • 54

0 Answers0