Android side:
private void triggerEvnet(String eventName, String detail){ if(eventName==null || eventName.length()==0){ return; } if(detail==null || detail.length()==0){ detail = "{}" } String js_string = "var myevent = new CustomEvent("+ eventName +", {detail: "+ detail +"});"; js_string += "window.dispatchEvent(myevent);"; webview.loadUrl("javascript:"+js_string); } // For example: KeyboardShow triggering event, the keyboard height as detail parameters triggerEvnet("KeyboardShow","{keyboardHeight:300}");
front end:
window.addEventListener("KeyboardShow",function(e){ console.log("Keyboard Height: " + e.detail.keyboardHeight) })