我正在使用以下代码。
Android代码
myBrowser.getSettings().setJavaScriptEnabled(true);
myBrowser.loadUrl("file:///android_asset/mypage.html");
myBrowser.setWebViewClient(new WebViewClient());
myBrowser.addJavascriptInterface(new MyJavaScriptInterface(MainActivity.this), "MyJavaScriptInterface");
public class MyJavaScriptInterface {
MainActivity mContext;
MyJavaScriptInterface(MainActivity c) {
mContext = c;
}
public void showToast(String toast)throws NoSuchFieldException, IllegalArgumentException, IllegalAccessException{
Log.e("inside","showtoast of myjavascript interface");
Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show();
}
}
JavaScript代码
<input type="button" value="Open Dialog" onClick="checkWindow()"/>
<script language="javascript">
function checkWindow(){
console.log("andriod obj"+window.MyJavaScriptInterface);
if(window.MyJavaScriptInterface){
console.log("andriod in methd"+window.MyJavaScriptInterface);
window.MyJavaScriptInterface.showToast('Hii...');
}
}
</script>
当我点击打开对话框按钮时,我收到错误为"Uncaught TypeError: window.MyJavaScriptInterface.showToast is not a function",
请告诉我我错过了什么