본문 바로가기
Android

안드로이드 스튜디오 WebView 경고창 및 확인창 띄우기

by 일용직 코딩노동자 2019. 10. 24.
728x90
반응형

WebView에서 하이브리드 앱으로 셋팅할때 웹페이지에서 alert창을 띄우는 경우가 있습니다.

이걸 앱딴에서 처리해주어야 합니다.

URL연결 하기 전에 이부분을 위에 셋팅해줍니다.

/////////////////////////////////////////////////////////////////////////WebView 확인창/////////////////////////////////////////////////////////////////////////
        mWebView.setWebChromeClient(new WebChromeClient() {
            @Override
            public boolean onJsConfirm(WebView view, String url, String message, final JsResult result) {

                new AlertDialog.Builder(MainActivity.this)
                        .setTitle("확 인")
                        .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() {
                                    @Override
                                    public void onClick(DialogInterface dialog, int which) {
                                        result.cancel();
                                    }
                                })
                        .setCancelable(false)
                        .create()
                        .show();
                return true;
            }
        });
        /////////////////////////////////////////////////////////////////////////WebView 확인창/////////////////////////////////////////////////////////////////////////

        /////////////////////////////////////////////////////////////////////////WebView 경고창/////////////////////////////////////////////////////////////////////////
        mWebView.setWebChromeClient(new WebChromeClient() {
            @Override
            public boolean onJsAlert(WebView view, String url, String message, final android.webkit.JsResult result) {
                new AlertDialog.Builder(MainActivity.this)
                        .setTitle("경 고")
                        .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;
            }
        });
        /////////////////////////////////////////////////////////////////////////WebView 경고창/////////////////////////////////////////////////////////////////////////

이걸 셋팅해준다면 setMessage안에 message를 경고창이나 확인창의 메세지를 정의할수있습니다.

 

궁금하신 사항은 댓글 남겨주세요.

728x90
반응형

댓글