LoginSignup
1
0

【Android/Java】ローカルWebサーバのHTTPSを表示

Posted at

やりたいこと

XAMPPなどで立てたローカルWebサーバのコンテンツを、WebViewでHTTPS表示させたい(白画面表示の対応)

サンプルコード

Java

WebView webView = (WebView) findViewById(R.id.webView);
String url = "https://192.168.1.1/hoge/";

/* WebView内表示 */
webView.setWebViewClient(new WebViewClient() {
	@SuppressLint("WebViewClientOnReceivedSslError")
	@Override
	public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
		/* SSLエラーを許可扱いにする */
		handler.proceed();
	}

	/* ページ読込 完了 */
	public void onPageFinished(WebView view, String url) {
		/* ~(読み込み完了時の処理)~ */
	}
});
/* Webページ読込開始 */
webView.loadUrl(url);

解説

  1. デフォルトのWebView にセットされている WebViewClientは、onReceivedSslError() の中で処理をキャンセル(handler.cancel)しているため、白画面が表示される
  2. WebViewClientを生成時、onReceivedSslError()をオーバーライドして、キャンセル処理を許可(handler.proceed)上書きする
    ポイント:本番サービスでは、この対応をしないこと!
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0