To add js-functions support to a WebView in android:
In order to generate android alert in webview while a js alert is generated we can use the following method
WebView myWebView = (WebView)findViewById(R.id.myWebView);  
myWebView.getSettings().setJavaScriptEnabled(true);  /* Enable Javascript to make it function */
final Context mContext = this;  
/* WebChromeClient must be set before loading the url using loadUrl */  
myWebView.setWebChromeClient(new WebChromeClient() {  
@Override  
public boolean onJsAlert(WebView view, String url, String message, final android.webkit.JsResult result)   
{  
new AlertDialog.Builder(mContext)  
.setTitle("Title-Alert")  
            .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;  
    };  
});  
myWebView.loadUrl("http://www.hiox.org/");  /* Call the webpage */  
This helps in making response to a javascript alert generated from a webpage.
Similarly we can also add other function supports to the webview as follows
For onPageFinished 
 @Override
            public void onPageFinished(WebView view, String url)
            {
}
For onPageStarted
@Override
            public void onPageStarted(WebView view, String url, Bitmap favicon)
            {
}
For onJsConfirm
@Override
            public boolean onJsConfirm(WebView view, String url, String message, final JsResult result)
            {
new AlertDialog.Builder(mContext)
                    .setTitle("javaScript dialog")
                    .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;
}
For onJsPrompt
@Override
            public boolean onJsPrompt(WebView view, String url, String message, String defaultValue,final JsPromptResult result)
            {
                new AlertDialog.Builder(mContext)
                    .setTitle("javaScript dialog")
                    .setView(v)
                    .setPositiveButton(android.R.string.ok,
                            new DialogInterface.OnClickListener() {
                                public void onClick(DialogInterface dialog, int whichButton) {
                                    String value = "testexample"
                                    result.confirm(value);
                                }
                            })
                    .setNegativeButton(android.R.string.cancel,
                            new DialogInterface.OnClickListener() {
                                public void onClick(DialogInterface dialog, int whichButton) {
                                    result.cancel();
                                }
                            })
                    .setOnCancelListener(
                            new DialogInterface.OnCancelListener() {
                                public void onCancel(DialogInterface dialog) {
                                    result.cancel();
                                }
                            })
                    .show();
               
                return true;
            };
For onProgressChanged
@Override
            public void onProgressChanged(WebView view, int newProgress)
            {
                updateProgress(newProgress);
                super.onProgressChanged(view, newProgress);
            }
For onReceivedTitle
@Override
            public void onReceivedTitle(WebView view, String title)
            {
                setTitle(title);
                super.onReceivedTitle(view, title);
            }
This would help in making control over the JS functions in Android.