I have two buttons in webview. I want to give manually click events to their. Below is my code;
WebPage Code
<form method="post" name="refer_now">
<div class="refer-now-button">
<!-- <button type="submit" class="refer-now-btn" id="refer-now">refer now</button> -->
<input type="button" class="refer-now-btn" value="refer now" name="refernow" id="refernow" onClick="showAndroidToast('refer');" />
</div>
</form>
<form method="post" name="refer_now_footer">
<div class="refer-now-button">
<!-- <button type="submit" class="refer-now-btn" id="refer_now_footer">refer now</button> -->
<input type="button" class="refer-now-btn" value="refer now" name="refer-footer" id="refer-footer" onClick="showAndroidToast('bottom_refer');" />
</div>
</form>
Below is my java code;
mWebview.loadUrl(link);
mWebview.setWebChromeClient(new WebChromeClient() {
@Override
public boolean onJsAlert(WebView view, String url, String message, JsResult result) {
//Required functionality here
return super.onJsAlert(view, url, message, result);
}});
mWebview.addJavascriptInterface(new WebAppInterface(this), "AndroidInterface");
mWebview.getSettings().setJavaScriptEnabled(true);
mWebview.getSettings().setLoadsImagesAutomatically(true);
mWebview.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
public class WebAppInterface {
Context mContext;
// Instantiate the interface and set the context
WebAppInterface(Context c) {
mContext = c;
}
@JavascriptInterface
public void showevent(String toast) {
if(toast.equalsIgnoreCase("refer")){
Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show();
}else if(toast.equalsIgnoreCase("bottom_refer")){
Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show();
}
}
}
When I run this code; this gives me below errors:
"Uncaught ReferenceError: AndroidInterface is not defined",