使用webview呼叫第三方登入時候遇到的坑
阿新 • • 發佈:2019-02-05
最近專案中有個需求,呼叫第三方提供的登陸介面登陸專案,其中需要對第三方登入的webview返回值進行攔截
1、首先,使用webview載入第三方登入的網頁,
webView.loadUrl(url);
2、webview設定呼叫自定義的webviewclient,
webView.setWebViewClient(new WebViewClient(){ @Override public void onPageFinished(WebView view, String url) { mProgressBar.setVisibility(View.GONE); super3、重寫shouldoverload那個方法,用來攔截登陸的返回值.onPageFinished(view, url); } }
@Override public boolean shouldOverrideUrlLoading(WebView view, String url) { if(url.contains(redirect_uri)) { //這裡對攔截出來的url進行處理,獲取url中我們需要的code return true; } return super.shouldOverrideUrlLoading(view, url); }
4、攔截後進行拼接,再次請求,這裡就可以使用http請求進行處理了。