読者です 読者をやめる 読者になる 読者になる

SslErrorHandler.proceed

onReceivedSslErrorで、SSLエラーを拾えるのはわかったが、そのままだとページを表示できない・・・。
ユーザの許可を得て、ロードを薦めるには、SslErrorHandler.proceedを使う・・・。

SslErrorHandler | Android Developers

今回はダイアログを表示し、Proceedボタンを押したら、進めるようにする・・・。

CustomWebViewClient.javaで、

AlertDialog.Builderでアラートダイアログ作成・・・。
"SSL Error!"と表示し、"Proceed"がonClickなら、handler.proceedで進める・・・。
なお、super.onReceivedSslErrorがないので、キャンセルすると止まったままの状態になる・・・。

f:id:BG1:20170303113544p:plain

Yahoo!トップから、

f:id:BG1:20170303113608p:plain

https://bgstation0.comをロード・・・。

f:id:BG1:20170303113643p:plain

"SSL Error!"の確認ダイアログがでる・・・。
バックキーとかダイアログの外をタッチするとキャンセルになり、

f:id:BG1:20170303113744p:plain

ロードはされない・・・。というかロードが止まった状態なのか・・・。

f:id:BG1:20170303113832p:plain

もう一回ロード・・・。
今度はProceedを押すと、

f:id:BG1:20170303113858p:plain

ロードされる・・・。

Sample/android/SslErrorHandler/proceed/src/SslErrorHandler at master · bg1bgst333/Sample · GitHub