【发布时间】:2011-10-23 21:32:39
【问题描述】:
我有 WebView,里面有 JS 代码。我也有接口允许从 WebView 到 Java 代码的 Java 方法调用。 我需要将数据从 JS 传递到 Java。 这样做:
webView.loadUrl("javascript:getData()");
//Obtain Java object here
在 JavaScript 中:
function gataData () {
//serialize data to JSON, pass it as 'native' function param
JSInterface.setLocationsData(data);// This calls a Java function setLocationsData(String param)
}
在 JavaScript 接口中(Java 代码):
void setLocationsData(String param){
//parse JSON here, create Java Object
}
问题是:在 webView.loadUrl() 之后调用 WebView 中的脚本与将数据返回到我的 Java 代码的时刻之间存在延迟。 Java 代码不会等待 JS 完成它的业务。我该如何解决?
【问题讨论】:
标签: java javascript android webkit