SO と google に関する多くの記事を参照した後、私の質問に対する解決策が見つかりませんでした。
問題は、WebViewClient クラスの onPageFinished メソッドでホスト名を取得していることです。getHost() がホスト名を複数回返すと問題が発生します。しかし、私は単一のホスト名が欲しいです。
例: bmw.com Web サイトを開くと、getHost() は www.bmw.com を 2 回返し、同じ Web ページに対して m.bmw.com を 3 回返します。
onPageStarted で試してみましたが、結果は似ています。
タイトルを取得するために WebChromeClient を試してみましたが、タイトルが返されない場合があるため、信頼できません。
ページの読み込み後に単一のホスト名を取得する方法はありますか?
これが私のコードです
public void onPageFinished(WebView view, String url4){
String urlHost = null;
try {
urlHost = new URL(url4).getHost().toString();
} catch (MalformedURLException e) {
e.printStackTrace();
}
addressBarTextView.setText(urlHost);
}