-
[안드로이드] 웹뷰(WebView 에서 자바스크립트 alert 띄우기안드로이드 2016. 9. 13. 19:53반응형
웹뷰로 구성된 화면에서 자바스크립트로 alert 메시지를 띄울때 WebViewClient 로만 구성할 경우 alert 메시지가 뜨지 않습니다.
이 경우는 기존의 WebViewClient 는 그대로 두고 추가로 WebChromeClient 를 추가해 주면 됩니다.
webView.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String overrideUrl) { view.stopLoading(); view.loadUrl(overrideUrl); return false; } public void onReceivedError(WebView view, int errorCode, String description, String fallingUrl) { view.loadData("<html><body></body></html>", "text/html", "UTF-8"); } });
위 코드는 기존의 WebViewClient 를 사용한 경우입니다. WebChromeClient 를 추가해 줍니다.
webView.setWebChromeClient(new WebChromeClient() { @Override public boolean onJsAlert(WebView view, String url, String message, final android.webkit.JsResult result) { new AlertDialog.Builder(myApp) .setTitle("Alert title") .setMessage(message) .setPositiveButton(android.R.string.ok, new AlertDialog.OnClickListener() { public void onClick(DialogInterface dialog, int which) { result.confirm(); } }) .setCancelable(false) .create() .show(); return true; } });
반응형'안드로이드' 카테고리의 다른 글
서비스 알아가기 (0) 2016.09.03 안드로이드 SparseArray (0) 2016.07.18 안드로이드 OnclickListener 가독성 괜찮은 코드 (0) 2016.07.02 안드로이드 Context 란? (0) 2016.06.19 안드로이드 스크롤뷰 와 어댑터뷰 차이점 (0) 2016.06.19