我浏览了此处共享的所有帖子,但仍然找不到正确的答案来运行代码并使应用程序正常运行。如果您能在此问题上为我提供帮助,我将不胜感激。

我正在提到的tages中调用有界函数getLocation():如下所述,getLocation函数绑定(bind)到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];
}

请对此提出建议。谢谢。

最佳答案

我不认为您可以轻松地完成像Array这样的复杂对象。您开始进入JSON Realm 。

实际上,我发现了一些使用JSON完成此操作的示例代码。

问题:您想将数组数据从Java推送到JavaScript和/或从JavaScript推送到Java http://androidcookbook.com/Recipe.seam?recipeId=4426&title=Exchanging%20Array%20Data%20between%20Java%20and%20JavaScript

10-07 22:01