我浏览了此处共享的所有帖子,但仍然找不到运行代码并使我的应用程序正常运行的正确答案。如果你们中的任何人可以在这个问题上帮助我,我将不胜感激。
如前所述,我在标签中调用有界函数 getLocation():。getLocation 函数绑定到 Android 中的 MyHandler,如下所述:
public class MainActivity extends Activity {
WebView webView;
private Handler mHandler = new Handler ();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
webView = (WebView) findViewById(R.id.webView);
webView.getSettings().setJavaScriptEnabled(true);
webView.addJavascriptInterface (new Object(){
public void getLocation(){
mHandler.post (new Runnable(){
public void run(){
String[] values = {"3.16802","101.71309"};
webView.loadUrl("javascript:setLocation("+values+")");
}
});
}
}, "MyHandler");
webView.loadUrl("file:///android_asset/example/quick-start-example.html");
}
}
Android中的setLocation函数调用JavaScrip中的方法如下,这里我们将数组传递给JS函数:
function setLocation(val){
var lat = val[0];
var lng = val[1];
}
请就此提出建议。谢谢你。