안드로이드시작부터웹뷰까지

안드로이드개발 웹뷰에서 경고창 ( alert ) 이 반응 없을때

개발자C군 2014. 10. 16. 04:40

안드로이드 웹뷰에서 사이트를 불러왔습니다.


그런데 뭔가 불러온 내용이 웹브라우져랑 다르다?? 무언인고하니 자바스크립트로 alert 으로 메세지가 나와야 할 부분에서

아무 반응이 없습니다. 심지어 그다음 동작은 진행도 되지않네요..


자그럼 자바스크립트 alert 창을 적용시켜 봅시다.

1) MainActivity.java 파일을 찾아서 편집합니다.

2) onCreate 안에 볼드체 로 체크된 내용을 삽입합니다.

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        

        requestWindowFeature(Window.FEATURE_NO_TITLE);

        setTheme(android.R.style.Theme_NoTitleBar_Fullscreen);

        

        setContentView(R.layout.activity_main);

        

        mWebView = (WebView) findViewById(R.id.WebView1);

        mWebView.getSettings().setJavaScriptEnabled(true);

        

        final Context myApp = this;

        mWebView.setWebChromeClient(new WebChromeClient() {

            @Override

            public boolean onJsAlert(WebView view, String url, String message, final android.webkit.JsResult result)

            {

                new AlertDialog.Builder(myApp)

                    .setTitle("AlertDialog")

                    .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;

            };

        });

        

        mWebView.setWebViewClient(new WishWebViewClient());

        mWebView.loadUrl("http://wishroom.kr/pages");

    }

3) X 표시가 나오는 부분은들 클릭하여 import 시킨뒤에 X 표시가 모두 사라졌다면 앱실행!!

4) 짠 이렇게 적용되었습니다.


참고 블로그 : http://drcarter.tistory.com/103