以下は、WebView をロードするために使用しているコードです。URL のキャプチャと新しいアクティビティ ページへのリダイレクトは、ユーザーが webview の html ページのログイン ボタンをクリックすると、「shouldOverrideUrlLoading」を使用して行われます。しかし、ページをロードするとき、ページはセキュリティ チェック (https ページへのリダイレクト) の後にリダイレクトされ、制御が「shouldOverrideUrlLoading」関数に渡され、アクティビティが空白になります。「shouldOverrideUrlLoading」関数を削除すると、WebView にログイン画面が表示されます。しかし、私たちは新しい活動に行くことができません。リダイレクト URL をキャッチして「shouldOverrideUrlLoading」関数にロードしようとしましたが、コンテンツをロードできません。そして、「shouldOverrideUrlLoading」関数からのさまざまな条件に対して true と false を返そうとしますが、これも機能しません。
セキュリティチェックからのリダイレクト後にWebViewにログインページをロードし、ログイン後にURLを上書きして新しいアクティビティにリダイレクトするために何をする必要があるかを誰かが提案できますか?
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login_page);
WebView webview = (WebView) findViewById(R.id.wvLogin);
setContentView(webview);
webview.setWebViewClient(new WebViewClient()
{
// Override URL
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
if(url.equals("http://Url which needs to override after login"))
{
Intent i = new Intent(getApplicationContext(), APImages.class);
startActivity(i);
}
return true;
}
});
webview.loadUrl("http://Login Page Url");
}