2016-09-30 8 views
0

いくつかのリダイレクトを行った後、Webformでurlが最終的に終了します。どのようにWebViewを終了できますか? 私はページ内のボタンのようなwebviewでHtml要素を検出する方法がありますか?AndroidのWebビューでリダイレクトを検出する方法

public boolean shouldOverrideUrlLoading (WebView view, String url){ 
     view.loadUrl(request.getUrl().toString()); 
     return true; 
} 

[WebViewClient Reference]

答えて

0

Webクライアントを使用して、shouldOverrideUrlLoading t WebViewがロードする前にすべてのURLを傍受します。

mWebView.setWebViewClient(new WebViewClient() { 


    @Override 
    public boolean shouldOverrideUrlLoading(WebView webView, String url) { 

     // Here put your code to exit 

     // return true; //This indicates WebView to NOT load the url; 
     // return false; //Allow WebView to load url 
    } 
}); 
+0

ありがとうございます。 ウェブビューに複数のリダイレクトがある場合、このコードでどのようにトラッキングできますか?私はコードを試しましたが、今でも第1のURLをロードしていません –

+0

@SheshanGamageあなたは偽を返しましたか? –

+0

私はこのブロック ' webView.setWebViewClient(新しいWebViewClient(){ \t \t @Overrideを使用 \t \tパブリックブールshouldOverrideUrlLoading(WebViewのWebViewの、文字列のURL){ \t \t \t \t \t \t \t \t IF( webView.getUrl()。contains( "code")){ \t \t \t \t \t return true;偽\t \t \t \t他} \t \t \t \t { \t \t \t \t \tリターン。 \t \t \t \t} \t \t} \t \t})。 \t} ' しかし、それは私に虚偽を与え、何もロードしていません。 –

0

を所有していないので、あなたがこのメソッドをオーバーライドURLを操作したい場合は、私はここにJavascriptを使用することはできませんこのようなメソッド

+0

チェック更新答えシェシャンガマゲは –

+0

佘山ガマゲ –

+0

チェックこのhttp://stackoverflow.com/a/5125620/2826147それは私はあなたが必要なものだと思います。@佘山ガマゲ@私の答えで述べたリンクをチェックしてください@ –

-1

は、あなたが作成する必要があります。私は、サイト

public class ProductionWebView extends Activity{ 


    private WebView webView; 
    String url ="https://www.google.lk/?gws_rd=ssl"; 



    @SuppressLint("JavascriptInterface") 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.production_webview); 
     webView = (WebView) findViewById(R.id.webView1); 
     webView.getSettings().setLoadsImagesAutomatically(true); 
     webView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY); 
     webView.loadUrl(url); 

     //ws.setJavaScriptEnabled(true); 
     webView.addJavascriptInterface(new Object() 
     { 
      public void performClick() 
      { 
       // Deal with a click on the OK button 
      } 
     }, "Next"); 
     webView.addJavascriptInterface(new Object() 
     { 

      public void performClick() 
      { 

      } 
     }, "Authorize");   

    } 


} 
+0

ウェブビューに複数のリダイレクトがある場合、このコードでどのようにトラッキングできますか? 私は試してみましたが、今でも第1のURLをロードしていません –

+0

shouldOverrideUrlLoadingメソッドをログに入れて、すべてのリダイレクト情報 –

+0

を返すとtrueを返し、問題が解決するかどうかを確認します –

関連する問題