Как обрабатывать диалог подтверждения веб-просмотра?

Я показываю веб-страницу в WebView и на веб-странице, есть кнопка. Когда вы нажимаете кнопку, открывается диалоговое окно подтверждения, но оно не отображается в моем WebView. Это всплывающее окно, если я перехожу на ту же веб-страницу в браузере Android. Кто-нибудь знает, как обрабатывать всплывающие диалоги, исходящие с веб-страницы внутри вашего WebView?

Solutions Collecting From Web of "Как обрабатывать диалог подтверждения веб-просмотра?"

Хорошо, нашел ответ, и вот он!

Чтобы обрабатывать всплывающее подтверждение, поступающее с веб-страницы в вашем WebView, вам необходимо переопределить метод onJsConfirm в WebChromeClient, чтобы отобразить всплывающее окно в виде диалогового окна Android Alert. Вот код для этого.

final Context myApp = this; final class MyWebChromeClient extends WebChromeClient { @Override public boolean onJsConfirm(WebView view, String url, String message, final JsResult result) { new AlertDialog.Builder(myApp) .setTitle("App Titler") .setMessage(message) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { result.confirm(); } }) .setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { result.cancel(); } }) .create() .show(); return true; } } 

Не забудьте установить свой WebChromeClient в свой WebView …

  mWebView.setWebChromeClient(new MyWebChromeClient()); 

Обратите внимание: это не мой код, но я нашел его, и он отлично работает для обработки диалогов подтверждения JavaScript в WebView!

Ура!