ȸ¿ø°¡ÀԡžÆÀ̵ð/ºñ¹øã±â
ȨÀ¸·Î


WebViewClient [Android]
7³â Àü
ebView webView = (WebView) findViewById(R.id.webview);
webView.getSettings().setJavaScriptEnabled(true);
// °¢Á¾ ¾Ë¸² ¹× ¿äûÀ» ¹Þ°ÔµÇ´Â WebViewClient¸¦ ¼³Á¤ÇÕ´Ï´Ù. - option
webView.setWebViewClient(new CustomWebViewClient());
// Å©·Ò Çڵ鷯 ¼³Á¤. ÀÌ Çڵ鷯´Â ÀÚ¹Ù ½ºÅ©¸³Æ® ´ëÈ­ »óÀÚ, favicon, Á¦¸ñ°ú ÁøÇà»óȲ 󸮿¡
// »ç¿ëÇϱâ À§ÇØ WebChromeClientÀ» ±¸ÇöÇÑ °ÍÀÔ´Ï´Ù. - option
webView.setWebChromeClient(new CustomWebChormeClient());
webView.loadUrl("...");

private class CustomWebViewClient extends WebViewClient {

    /** ¡é¡é WebView¿¡¼­ óÀ½ ÇÑ ¹ø¸¸ È£ÃâµÇ´Â ¸Þ½îµå ¡é¡é
     * ÆäÀÌÁö ·ÎµùÀÌ ½ÃÀÛµÈ °ÍÀ» ¾Ë¸³´Ï´Ù. ÀÌ ¸Þ½îµå°¡ °¢°¢ÀÇ main frameÀÌ iframe¿¡
     * ÆäÀÌÁö¸¦ ·ÎµåÇϱâ À§ÇØ Çѹø È£ÃâµÇ°Å³ª  framesetÀÌ main frame¿¡ ´ëÇØ ÀÌ ¸Þ½îµå¸¦
     * Çѹø È£ÃâÇÒ °Í ÀÔ´Ï´Ù. ÀÌ ¸Þ½îµå°¡ ÀÓº£µðµå ÇÁ·¹ÀÓ ³»¿ëÀÌ º¯°æµÇ¾úÀ» ¶§ È£ÃâµÇÁö
     * ¾Ê´Â´Ù´Â °Íµµ ¶æÇÕ´Ï´Ù. ¿¹¸¦ µé¸é, iframeÀÌ ÀÖ´Â ´ë»ó ¸µÅ©¸¦ Ŭ¸¯ÇÑ °Í ÀÔ´Ï´Ù.
     * /
    @Override
    public void onPageStarted(WebView view, String url, Bitmap favicon) {
        super.onPageStarted(view, url, favicon);
    }
  
    /**
     * WebView°¡ ÁÖ¾îÁø URL·Î ÁöÁ¤µÈ ¸®¼Ò½º¸¦ ·ÎµåÇÒ °ÍÀ̶ó°í ¾Ë¸³´Ï´Ù.
     * ÆäÀÌÁö ·ÎµùÀÌ ¿Ï·áµÉ ¶§±îÁö ¿©·¯¹ø È£ÃâµË´Ï´Ù. ÆäÀÌÁö°¡ ³ª´µ¾î¼­ ·ÎµùµÇ³ª º¾´Ï´Ù.
     * /
    @Override
    public void onLoadResource(WebView view, String url) {
        super.onLoadResource(view, url);
    }
  
    /**
     * ¹æ¹®ÇÑ ¸µÅ©¸¦ µ¥ÀÌÅͺ£À̽º¿¡ ¾÷µ¥ÀÌÆ®ÇÑ´Ù°í ¾Ë¸³´Ï´Ù.
     * /
    @Override
    public void doUpdateVisitedHistory(WebView view, String url, boolean isReload) {
        Log.i("WebView", "History: " + url );
        super.doUpdateVisitedHistory(view, url, isReload);
    }
/* °á°ú (urlÀÌ º¯ÇÒ ¶§ ¸¶´Ù)
History: http://www.abc.com/djfk...
History: http://www.abc.com/djfk.../fdfd
*/
  
    /** ¡é¡é WebView¿¡¼­ óÀ½ ÇÑ ¹ø¸¸ È£ÃâµÇ´Â ¸Þ½îµå ¡é¡é
     * ÆäÀÌÁö ·ÎµùÀÌ ¿Ï·áµÈ °ÍÀ» ¾Ë¸³´Ï´Ù. ÀÌ ¸Þ½îµå´Â ¸ÞÀÎ ÇÁ·¹ÀÓ¿¡ ´ëÇؼ­¸¸ È£ÃâµË´Ï´Ù.
     * ÀÌ ¸Þ½îµå°¡ È£ÃâµÇ¾úÀ» ¶§, picture renderingÀº ¾ÆÁ÷ ¾÷µ¥ÀÌÆ®µÇÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù.
     * »õ·Î¿î Picture°¡ ÀÖ´Ù´Â »ç½ÇÀ» ¾Ë±âÀ§ÇØ, onNewPicture(WebView, Picture) ¸Þ½îµå¸¦
     * »ç¿ëÇÕ´Ï´Ù.
     * /
    @Override
    public void onPageFinished(WebView view, String url) {
        super.onPageFinished(view, url);
    }
  
    /**
     * As the host application if the browser should resend data as the requested page
     * was a result of a POST. ±âº»ÀûÀ¸·Ð µ¥ÀÌÅ͸¦ Àç¹ß¼ÛÇÏÁö ¾Ê´Â °ÍÀÔ´Ï´Ù.
     * /
    @Override
    public void onFormResubmission(WebView view, Message dontResend,
            Message resend) {
        super.onFormResubmission(view, dontResend, resend);
    }
  
    /**
     * È£½ºÆ® ÀÀ¿ë ÇÁ·Î±×·¥¿¡°Ô ¿À·ù¸¦ º¸°íÇÕ´Ï´Ù. ÀÌ·¯ÇÑ ¿À·ù´Â º¹±¸ÇÒ ¼ö ¾ø½À´Ï´Ù.
     * (¿¹, main resource¸¦ »ç¿ëÇÒ ¼ö ¾ø´Â »óÅÂ) errorCode ¸Å°³ º¯¼ö´Â
     * WebViewClient.ERROR_* »ó¼ö Áß Çϳª¿¡ ÇØ´çÇÕ´Ï´Ù.
     * /
    @Override
    public void onReceivedError(WebView view, int errorCode,
            String description, String failingUrl) {
        super.onReceivedError(view, errorCode, description, failingUrl);

        switch(errorCode) {
        case ERROR_AUTHENTICATION: break;               // ¼­¹ö¿¡¼­ »ç¿ëÀÚ ÀÎÁõ ½ÇÆÐ
        case ERROR_BAD_URL: break;                           // À߸øµÈ URL
        case ERROR_CONNECT: break;                          // ¼­¹ö·Î ¿¬°á ½ÇÆÐ
        case ERROR_FAILED_SSL_HANDSHAKE: break;    // SSL handshake ¼öÇà ½ÇÆÐ
        case ERROR_FILE: break;                                  // ÀÏ¹Ý ÆÄÀÏ ¿À·ù
        case ERROR_FILE_NOT_FOUND: break;               // ÆÄÀÏÀ» ãÀ» ¼ö ¾ø½À´Ï´Ù
        case ERROR_HOST_LOOKUP: break;           // ¼­¹ö ¶Ç´Â ÇÁ·Ï½Ã È£½ºÆ® À̸§ Á¶È¸ ½ÇÆÐ
        case ERROR_IO: break;                              // ¼­¹ö¿¡¼­ Àаųª ¼­¹ö·Î ¾²±â ½ÇÆÐ
        case ERROR_PROXY_AUTHENTICATION: break;   // ÇÁ·Ï½Ã¿¡¼­ »ç¿ëÀÚ ÀÎÁõ ½ÇÆÐ
        case ERROR_REDIRECT_LOOP: break;               // ³Ê¹« ¸¹Àº ¸®µð·º¼Ç
        case ERROR_TIMEOUT: break;                          // ¿¬°á ½Ã°£ ÃÊ°ú
        case ERROR_TOO_MANY_REQUESTS: break;     // ÆäÀÌÁö ·ÎµåÁß ³Ê¹« ¸¹Àº ¿äû ¹ß»ý
        case ERROR_UNKNOWN: break;                        // ÀÏ¹Ý ¿À·ù
        case ERROR_UNSUPPORTED_AUTH_SCHEME: break; // Áö¿øµÇÁö ¾Ê´Â ÀÎÁõ ü°è
        case ERROR_UNSUPPORTED_SCHEME: break;          // URI°¡ Áö¿øµÇÁö ¾Ê´Â ¹æ½Ä
        }
    }
  
    /**
     * ÀÎÁõ ¿äûÀ» ó¸®ÇÑ´Ù°í ¾Ë¸³´Ï´Ù. ±âº» µ¿ÀÛÀº ¿äûÀ» Ãë¼ÒÇÏ´Â °ÍÀÔ´Ï´Ù.
     * /
    @Override
    public void onReceivedHttpAuthRequest(WebView view,
            HttpAuthHandler handler, String host, String realm) {
        super.onReceivedHttpAuthRequest(view, handler, host, realm);
    }
  
    /**
     * WebView°¡ º¯È­ÇϱâÀ§ÇØ scaleÀÌ Àû¿ëµÈ´Ù°í ¾Ë¸³´Ï´Ù.
     * /
    @Override
    public void onScaleChanged(WebView view, float oldScale, float newScale) {
        super.onScaleChanged(view, oldScale, newScale);
    }

    /**
     * ÀÌ ¸Þ½îµå´Â »ç¿ëÀÌ ÁßÁöµÇ¾ú½À´Ï´Ù. ÀÌ ¸Þ½îµå´Â ´õÀÌ»ó È£ÃâµÇÁö ¾Ê½À´Ï´Ù.
     * WebView°¡ Àç½ÃÀÛµÈ ·çÇÁ¸¦ ¹ß°ßÇϸé, ·Îµå°¡ Ãë¼ÒµË´Ï´Ù
     * /
    @Override
    public void onTooManyRedirects(WebView view, Message cancelMsg,
            Message continueMsg) {
        super.onTooManyRedirects(view, cancelMsg, continueMsg);
    }

    /** ¡é¡é À߸øµÈ Å° ÀÔ·ÂÀÌ ÀÖÀ» °æ¿ì È£ÃâµÇ´Â ¸Þ½îµå ¡é¡é
     * Å°°¡ WebView¿¡ ÀÇÇØ Ã³¸®µÇÁö ¾Ê¾ÒÀ½À» È£½ºÆ® ÀÀ¿ë ÇÁ·Î±×·¥¿¡°Ô ¾Ë¸².
     * ½Ã½ºÅÛ Å°¸¦ Á¦¿ÜÇÏ°í, WebView´Â shouldOverrideKeyEvent°¡ true¸¦ ¹ÝȯÇÏ´Â °æ¿ì³ª
     * ÀϹÝÀûÀÎ flow¿¡¼­ Ç×»ó Å° À̺¥Æ®¸¦ ó¸®ÇÕ´Ï´Ù. Å° À̺¥Æ®°¡ ¹ß»ýµÈ °÷À¸·Î ºÎÅÍ
     * ºñµ¿±âÀûÀ¸·Î È£ÃâµË´Ï´Ù. È£½ºÆ® ÀÀ¿ë ÇÁ·Î±×·¥¿¡°Ô 󸮵ÇÁö ¾ÊÀº Å° À̺¥Æ®¸¦ ó¸®ÇÒ
     * ±âȸ¸¦ Á¦°øÇÕ´Ï´Ù.
     * /
   @Override
   public void onUnhandledKeyEvent(WebView view, KeyEvent event) {

      super.onUnhandledKeyEvent(view, event);
   }
  
    /** ¡é¡é À߸øµÈ Å° ÀÔ·ÂÀÌ ÀÖÀ» °æ¿ì È£ÃâµÇ´Â ¸Þ½îµå ¡é¡é
     * È£½ºÆ® ÀÀ¿ë ÇÁ·Î±×·¥¿¡°Ô µ¿±âÀûÀ¸·Î Å° À̺¥Æ®¸¦ ó¸®ÇÒ ±âȸ¸¦ ÁÝ´Ï´Ù. ¿¹: ¸Þ´º ¹Ù·Î
     * °¡±â Å° À̺¥Æ®¸¦ ÀÌ·±½ÄÀ¸·Î ÇÊÅ͸µÇؾßÇÕ´Ï´Ù. true¸¦ ¹ÝȯÇÒ °æ¿ì, WebView´Â Å° À̺¥Æ®¸¦
     * ó¸®ÇÏÁö ¾Ê½À´Ï´Ù. false¸¦ ¹ÝȯÇÒ °æ¿ì, WebView Ç×»ó Å° À̺¥Æ®¸¦ ó¸®ÇÕ´Ï´Ù. So none
     * of the super in the view chain will see the key event. ±âº» µ¿ÀÛÀº false¸¦ ¹ÝȯÇÕ´Ï´Ù.
     * /
    @Override
    public boolean shouldOverrideKeyEvent(WebView view, KeyEvent event) {
        return super.shouldOverrideKeyEvent(view, event);
    }
  
    /**
     * »õ·Î¿î URLÀÌ ÇöÀç WebView¿¡ ·ÎµåµÇ·Á°í ÇÒ ¶§ È£½ºÆ® ÀÀ¿ë ÇÁ·Î±×·¥¿¡°Ô ÄÁÆ®·ÑÀ»
     * ´ë½ÅÇÒ ±âȸ¸¦ ÁÝ´Ï´Ù. WebViewClient°¡ Á¦°øµÇÁö ¾ÊÀ¸¸é, ±âº»ÀûÀ¸·Î WebView´Â URL¿¡
     * ´ëÇÑ ÀûÀýÇÑ Çڵ鷯¸¦ ¼±ÅÃÇÏ·Á°í Activity Manager¿¡°Ô ¹°¾îº¾´Ï´Ù. WebViewClient°¡
     * Á¦°øµÇ¸é, È£½ºÆ® ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ URLÀ» ó¸®ÇÑ´Ù´Â ÀǹÌÀÎ true¸¦ ¹Ýȯ°Å³ª ÇöÀç
     * WebView°¡ URLÀ» ó¸®ÇÑ´Ù´Â ÀǹÌÀÎ false¸¦ ¹ÝȯÇÕ´Ï´Ù.
     * /
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        return super.shouldOverrideUrlLoading(view, url);
    }
}
[Ãâó] Android WebViewClient »ç¿ëÇϱâ 1/2|ÀÛ¼ºÀÚ jolangma





WebView webView = (WebView) findViewById(R.id.webview);
webView.getSettings().setJavaScriptEnabled(true);
// °¢Á¾ ¾Ë¸² ¹× ¿äûÀ» ¹Þ°ÔµÇ´Â WebViewClient¸¦ ¼³Á¤ÇÕ´Ï´Ù. - option
webView.setWebViewClient(new CustomWebViewClient());
// Å©·Ò Çڵ鷯 ¼³Á¤. ÀÌ Çڵ鷯´Â ÀÚ¹Ù ½ºÅ©¸³Æ® ´ëÈ­ »óÀÚ, favicon, Á¦¸ñ°ú ÁøÇà»óȲ 󸮿¡
// »ç¿ëÇϱâ À§ÇØ WebChromeClientÀ» ±¸ÇöÇÑ °ÍÀÔ´Ï´Ù. - option
webView.setWebChromeClient(new CustomWebChormeClient());
webView.loadUrl(url);

private class CustomWebChormeClient extends WebChromeClient {

    /**
     * ÆäÀÌÁö¸¦ ·ÎµùÇÏ´Â ÇöÀç ÁøÇà »óȲÀ» ÀüÇØÁÝ´Ï´Ù.
     * newProgress  ÇöÀç ÆäÀÌÁö ·Îµù ÁøÇà »óȲ, 0°ú 100 »çÀÌÀÇ Á¤¼ö·Î Ç¥Çö.(0% ~ 100%)
     */
    @Override
    public void onProgressChanged(WebView view, int newProgress) {
        Log.i("WebView", "Progress: " + String.valueOf(newProgress));
        super.onProgressChanged(view, newProgress);
    }
/* °á°ú :
Progress: 10
Progress: 15
Progress: 35
...
Progress: 76
Progress: 100
*/

    /**
     * ÇöÀç ÆäÀÌÁö¿¡ »õ·Î¿î faviconÀÌ ÀÖ´Ù°í ¾Ë¸³´Ï´Ù.
     * icon ÇöÀç ÆäÀÌÁöÀÇ faviconÀÌ µé¾îÀÖ´Â ºñÆ®¸Ê  
     */
    @Override
    public void onReceivedIcon(WebView view, Bitmap icon) {
        super.onReceivedIcon(view, icon);
    }
/*
faviconÀ̶õ:
ÀϹÝÀûÀ¸·Î À¥ ºê¶ó¿ìÀúÀÇ URLÀÌ Ç¥½ÃµÇ±â Àü¿¡ ƯÁ¤ À¥»çÀÌÆ®¿Í °ü·ÃµÈ 16 ¡¿ 16 Çȼ¿ ¾ÆÀÌÄÜ
*/

    /**
     * ¹®¼­ Á¦¸ñ¿¡ º¯°æÀÌ ÀÖ´Ù°í ¾Ë¸³´Ï´Ù.
     * title  ¹®¼­ÀÇ »õ·Î¿î ŸÀÌƲÀÌ µé¾îÀÖ´Â ¹®ÀÚ¿­  
     */
    @Override
    public void onReceivedTitle(WebView view, String title) {
        super.onReceivedTitle(view, title);
    }
/*  ¾Æ·¡Ã³·³ title ÅÂ±× »çÀÌÀÇ °ªÀ» °¡Á®¿É´Ï´Ù.
<title> LGÅÚ·¹ÄÞ ÀüÀÚ°áÁ¦ ¼­ºñ½º </title>
*/

    @Override
    public Bitmap getDefaultVideoPoster() {
        return super.getDefaultVideoPoster();
    }

    @Override
    public View getVideoLoadingProgressView() {
        return super.getVideoLoadingProgressView();
    }

    @Override
    public void getVisitedHistory(ValueCallback<String[]> callback) {
        super.getVisitedHistory(callback);
    }

    @Override
    public void onCloseWindow(WebView window) {
         super.onCloseWindow(window);
    }

    @Override
    public void onConsoleMessage(String message, int lineNumber, String sourceID) {
        super.onConsoleMessage(message, lineNumber, sourceID);
    }

    @Override
    public boolean onCreateWindow(WebView view, boolean dialog,
            boolean userGesture, Message resultMsg) {
         return super.onCreateWindow(view, dialog, userGesture, resultMsg);
    }

    @Override
    public void onExceededDatabaseQuota(String url, String databaseIdentifier,
            long currentQuota, long estimatedSize, long totalUsedQuota,
            QuotaUpdater quotaUpdater) {
        super.onExceededDatabaseQuota(url, databaseIdentifier, currentQuota,
                estimatedSize, totalUsedQuota, quotaUpdater);
    }

    @Override
    public void onGeolocationPermissionsHidePrompt() {
         super.onGeolocationPermissionsHidePrompt();
    }

    @Override
    public void onGeolocationPermissionsShowPrompt(String origin,
            Callback callback) {
         super.onGeolocationPermissionsShowPrompt(origin, callback);
    }

    @Override
    public void onHideCustomView() {
        super.onHideCustomView();
    }

    /**
     * ÀÚ¹Ù ½ºÅ©¸³Æ® °æ°í ´ëÈ­ »óÀÚ¸¦ µð½ºÇ÷¹ÀÌÇÑ´Ù°í Ŭ¶óÀ̾ðÆ®¿¡°Ô ¾Ë·ÁÁÝ´Ï´Ù.
     * Ŭ¶óÀ̾ðÆ®°¡ true¸¦ ¹ÝȯÇÒ °æ¿ì, WebView´Â Ŭ¶óÀ̾ðÆ®°¡ ´ëÈ­ »óÀÚ¸¦ ó¸®ÇÒ ¼ö ÀÖ´Ù°í
     * ¿©±é´Ï´Ù. Ŭ¶óÀ̾ðÆ®°¡ false¸¦ ¹ÝȯÇÒ °æ¿ì, WebView´Â ½ÇÇàÀ» °è¼ÓÇÕ´Ï´Ù.
     * /
    @Override
    public boolean onJsAlert(WebView view, String url, String message,
            JsResult result) {
         return super.onJsAlert(view, url, message, result);
    }

    /**
     * ÇöÀç ÆäÀÌÁö¿¡¼­ ³ª¿Í Ž»öÀ» È®Á¤ÇÏ´Â ´ëÈ­ »óÀÚ¸¦ µð½ºÇ÷¹ÀÌÇÑ´Ù°í Ŭ¶óÀ̾ðÆ®¿¡°Ô
     * ¾Ë·ÁÁÝ´Ï´Ù. ÀÌ°ÍÀº ÀÚ¹Ù ½ºÅ©¸³Æ® À̺¥Æ® onbeforeunload()ÀÇ °á°úÀÔ´Ï´Ù. Ŭ¶óÀ̾ðÆ®°¡
     * true¸¦ ¹ÝȯÇÏ´Â °æ¿ì, WebView´Â Ŭ¶óÀ̾ðÆ®°¡ ´ëÈ­ »óÀÚ¸¦ ó¸®ÇÏ°í ÀûÀýÇÑ JsResult
     * ¸Þ½îµå¸¦ È£ÃâÇÒ °ÍÀ̶ó°í ¿©±é´Ï´Ù. Ŭ¶óÀ̾ðÆ®°¡ false¸¦ ¹ÝȯÇÏ´Â °æ¿ì, trueÀÇ ±âº»°ªÀº
     * ÇöÀç ÆäÀÌÁö¿¡¼­ ³ª¿Í Ž»öÇϱ⸦ ¼ö¶ôÇϱâ À§ÇÑ ÀÚ¹Ù ½ºÅ©¸³Æ®¸¦ ¹ÝȯÇÏ°Ô µÉ °ÍÀÔ´Ï´Ù.
     * ±âº» µ¿ÀÛÀº false¸¦ ¹ÝȯÇÏ´Â °ÍÀÔ´Ï´Ù. JsResult¸¦ true·Î ¼³Á¤ÇÑ °ÍÀº ÇöÀç ÆäÀÌÁö¿¡¼­ ³ª¿Í
     * Ž»öÇÒ °ÍÀÌ°í false·Î ¼³Á¤ÇÑ °ÍÀº Ž»öÀ» Ãë¼ÒÇÒ °ÍÀÔ´Ï´Ù.
     * /
    @Override
    public boolean onJsBeforeUnload(WebView view, String url,
            String message, JsResult result) {
        return super.onJsBeforeUnload(view, url, message, result);
    }

    /**
     * »ç¿ëÀÚ¿¡°Ô È®ÀÎ ´ëÈ­ »óÀÚ¸¦ µð½ºÇ÷¹ÀÌÇÑ´Ù°í Ŭ¶óÀ̾ðÆ®¿¡°Ô ¾Ë·ÁÁÝ´Ï´Ù. Ŭ¶óÀ̾ðÆ®°¡
     * true¸¦ ¹ÝȯÇÏ´Â °æ¿ì, WebView´Â Ŭ¶óÀ̾ðÆ®°¡ È®ÀÎ ´ëÈ­ »óÀÚ¸¦ ó¸®ÇÏ°í ÀûÀýÇÑ
     * JsResult ¸Þ½îµå¸¦ È£ÃâÇÒ ¼ö ÀÖ´Ù°í ¿©±é´Ï´Ù. Ŭ¶óÀ̾ðÆ®°¡ false¸¦ ¹ÝȯÇÏ´Â °æ¿ì falseÀÇ
     * ±âº»°ªÀº ÀÚ¹Ù ½ºÅ©¸³Æ®·Î ¹ÝȯµÉ °Í ÀÔ´Ï´Ù. ±âº» µ¿ÀÛÀº false¸¦ ¹ÝȯÇÏ´Â °ÍÀÔ´Ï´Ù.
     * /
    @Override
    public boolean onJsConfirm(WebView view, String url, String message,
            JsResult result) {
         return super.onJsConfirm(view, url, message, result);
    }

    /**
     * »ç¿ëÀÚ¿¡°Ô ÇÁ·ÒÇÁÆ® ´ëÈ­ »óÀÚ¸¦ µð½ºÇ÷¹ÀÌÇÑ´Ù°í Ŭ¶óÀ̾ðÆ®¿¡°Ô ¾Ë·ÁÁÝ´Ï´Ù.
     * Ŭ¶óÀ̾ðÆ®°¡ true¸¦ ¹ÝȯÇÏ´Â °æ¿ì, WebView´Â Ŭ¶óÀ̾ðÆ®°¡ È®ÀÎ ´ëÈ­ »óÀÚ¸¦ ó¸®ÇÏ°í
     * ÀûÀýÇÑ JsResult ¸Þ½îµå¸¦ È£ÃâÇÒ ¼ö ÀÖ´Ù°í ¿©±é´Ï´Ù. Ŭ¶óÀ̾ðÆ®°¡ false¸¦ ¹ÝȯÇÏ´Â °æ¿ì
     * falseÀÇ ±âº»°ªÀº ÀÚ¹Ù ½ºÅ©¸³Æ®·Î ¹ÝȯµÉ °Í ÀÔ´Ï´Ù. ±âº» µ¿ÀÛÀº false¸¦ ¹ÝȯÇÏ´Â °ÍÀÔ´Ï´Ù.
     * /
    @Override
    public boolean onJsPrompt(WebView view, String url, String message,
            String defaultValue, JsPromptResult result) {
          return super.onJsPrompt(view, url, message, defaultValue, result);
    }

    /**
     * ÀÚ¹Ù ½ºÅ©¸³Æ® ½ÇÇà Á¦ÇÑ ½Ã°£À» ÃÊ°úÇß´Ù°í Ŭ¶óÀ̾ðÆ®¿¡°Ô ¾Ë·ÁÁÝ´Ï´Ù. ±×¸®°í
     * Ŭ¶óÀ̾ðÆ®°¡ ½ÇÇàÀ» Áß´ÜÇÒÁö ¿©ºÎ¸¦ °áÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. Ŭ¶óÀ̾ðÆ®°¡ true¸¦ ¹ÝȯÇÏ´Â
     * °æ¿ì, ÀÚ¹Ù ½ºÅ©¸³Æ®°¡ Áߴܵ˴ϴÙ. Ŭ¶óÀ̾ðÆ®°¡ false¸¦ ¹ÝȯÇÏ´Â °æ¿ì, °è¼Ó ½ÇÇàµË´Ï´Ù.
     * Âü°í·Î Áö¼ÓÀûÀÎ ½ÇÇà »óÅ¿¡¼­´Â Á¦ÇÑ ½Ã°£ Ä«¿îÅÍ°¡ Àç¼³Á¤µÇ°í  ½ºÅ©¸³Æ®°¡ ´ÙÀ½ üũ
     * Æ÷ÀÎÆ®¿¡¼­ ¿Ï·áµÇÁö ¾ÊÀ» °æ¿ì °è¼Ó ÄݹéµÇ¾îÁú °ÍÁý´Ï´Ù.
     * /
    @Override
    public boolean onJsTimeout() {
        return super.onJsTimeout();
    }

  

    @Override
    public void onReachedMaxAppCacheSize(long spaceNeeded,
            long totalUsedQuota, QuotaUpdater quotaUpdater) {
        super.onReachedMaxAppCacheSize(spaceNeeded, totalUsedQuota, quotaUpdater);
    }

    

    @Override
    public void onReceivedTouchIconUrl(WebView view, String url,
            boolean precomposed) {
        super.onReceivedTouchIconUrl(view, url, precomposed);
    }

    @Override
    public void onRequestFocus(WebView view) {
        super.onRequestFocus(view);
    }

    @Override
    public void onShowCustomView(View view, CustomViewCallback callback) {
        super.onShowCustomView(view, callback);
    }

}
ÃßõÃßõ : 537 Ãßõ ¸ñ·Ï
¹øÈ£ Á¦¸ñ
1,136
Android VideoView Example
1,135
[°³¹ß Tip] WebView ·Îµù½Ã ŸÀÌƲ¹Ù¿¡ ÁøÇàÁß ¾ÆÀÌÄÜ º¸ÀÌ°Ô Çϱâ
1,134
[°³¹ß Tip] webview ½ºÅ©·Ñ
1,133
[°³¹ß Tip] WebView ¿¡¼­ ÀÚ¹Ù ½ºÅ©¸³Æ® »ç¿ë¿¹
1,132
[°³¹ß Tip] WebView À¥ÆäÀÌÁö ·Îµù½Ã°£ ±¸Çϱâ
1,131
[°³¹ß Tip] WebView ÆäÀÌÁö°¡ ·ÎµùµÇ¾úÀ»¶§ ó¸®
1,130
[°³¹ß Tip] WebView¿¡ »õâ(href)ÀÌ ¶ã¶§ À¥ºê¶ó¿ìÁ®°¡ ¾Æ´Ñ ÇöÀç WebView·Î Ãâ·ÂÇϱâ
1,129
[°³¹ß Tip] WebView¿¡¼­ ¸ÖƼ ÅÍÄ¡ °¡´ÉÇÏ°Ô Çϱâ
1,128
[°³¹ß Tip] WebView¿¡¼­ ¸ÖƼ ÅÍÄ¡ ÁÜ °¡´ÉÇÏ°Ô Çϱâ
1,127
[°³¹ß Tip] WebView¿¡¼­ ¹®ÀÚ¿­ ¼±ÅÃÇϱâ
1,126
[°³¹ß Tip] webview¿¡¼­ À¯Æ©ºê µ¿ÀÛ½ÃÅ°±â
1,125
[°³¹ß Tip] Wifi ¿¬°á »óÅ °¨ÁöÇϱâ
1,124
[°³¹ß Tip] ³»ÀåµÈ ¾îÇ÷ΠSMS ¸Þ½ÃÁö º¸³»±â
1,123
[°³¹ß Tip] ´Ü¸»±â Æù¹øÈ£ ¾Ë¾Æ³»±â
1,122
[°³¹ß Tip] ¸®¼Ò½º¸íÀ¸·Î ÇØ´ç ¸®¼Ò½º ID ±¸Çϱâ
1,121
[°³¹ß Tip] ¸ÖƼÅÍÄ¡ (Multi Touch) ±¸Çö ¼Ò½º
1,120
[°³¹ß Tip] ºÎÆýà ¼­ºñ½º ½ÇÇàÇϱâ
1,119
[°³¹ß Tip] ¾Èµå·ÎÀÌµå ±â±âº° °íÀ¯ ID
1,118
[°³¹ß Tip] ¾ÈÅ׳ª ¿µ¿ª ¾ø¾Ö±â
1,117
[°³¹ß Tip] ¾×Ƽ¹öƼ(Activity)¿¡¼­ ¾Ö´Ï¸ÞÀÌ¼Ç È¿°úÁÖ±â
1,116
[°³¹ß Tip] ¾×Ƽ¹öƼÀÇ Å¸ÀÌƲ¹Ù Á¦°Å, ¾ÈÅ׳ª ¿µ¿ª±îÁö Á¦°Å
1,115
[°³¹ß Tip] ¿Àµð¿À / ºñµð¿À ½ÇÇà
1,114
[°³¹ß Tip] ÀüÈ­°¡ ¿ÔÀ»¶§ À̺¥Æ® ¼ö½ÅÇϱâ
1,113
[°³¹ß Tip] ÆÄÀÏ(File) »ç¿ë
1,112
[°³¹ß Tip] Æù ¸¶ÀÌÅ©¿¡ ³ìÀ½Çϱâ
1,111
[°³¹ß Tip] ÇØ´ç ActionÀ» ¼öÇàÇÒ¼ö°¡ ÀÖ´Â ¾×Ƽ¹öƼ(¾îÇÃ)ÀÌ Á¸ÀçÇÏ´ÂÁö ã±â
1,110
[°³¹ß Tip] ÇöÀç µð¹ÙÀ̽º(Æù)ÀÇ IP ÁÖ¼Ò ¾Ë¾Æ³»±â
1,109
[°³¹ß Tip] XmlPullParser¸¦ ÀÌ¿ëÇؼ­ rss³» title Ç׸ñ Àбâ
1,108
[°³¹ß Tip] ÇöÀç ¿¬ÁÖÁßÀÎ ¿Àµð¿À ¾îÇÃÀ» À½¼Ò°Å Çϱâ
1,107
[°³¹ß Tip] È­¸é »ó´ÜÀÇ Å¸ÀÌƲ¹Ù (»óŹ٠°¨Ãß±â)
¸ñ·Ï
¹ÂÁ÷Æ®·ÎÆ® ºÎ»ê±¤¿ª½Ã ºÎ»êÁø±¸ °¡¾ßµ¿ ¤Ó °³ÀÎÁ¤º¸Ãë±Þ¹æħ
Copyright ¨Ï musictrot All rights reserved.