HTTPSのページをWebViewで表示

ハマったのでメモしておきます。

HTTPSのページを指定してWebViewで表示させようとしたんだけど、表示されない・・・・。

以下のように記述すれば、SSLエラー発生時に無視して処理を進めてくれるらしい。

		setContentView(R.layout.dc_login);

		WebView webView = (WebView) findViewById(R.id.dc_login_web);

		// WebViewClientを設定する
		webView.setWebViewClient(new WebViewClient(){
			public void onReceivedSslError(WebView view, SslErrorHandler handler,
		            SslError error) {
		        handler.proceed();
		    }
		});

ただ、onReceivedSslErrorメソッドはAndroid 2.2以降に実装されているようです。
このままでは、2.1以前では使えないので・・・・・。
2.2からWebViewClientとSslErrorクラスを持ってくるようです。
android.net.httpパッケージを作成してSslErrorクラスを、
android.webkitパッケージを作成してWebViewClientクラスをコピーします。

これで上記ソースコードがコンパイルでき、動作させると正しくHTTPSページが表示されるようになります。

参考にしたサイトは以下です。

http://damianflannery.wordpress.com/2010/09/28/android-webview-with-https-loadurl-shows-blankempty-page/

SslErrorクラス、WebViewClientクラスがダウンロードできるので、
ここから落としてください。