【问题标题】:How to pass values from Java to Javascript insiede an Android WebView如何在 Android WebView 中将值从 Java 传递到 Javascript
【发布时间】:2013-11-15 17:04:28
【问题描述】:

我正在构建一个 Android 应用程序,我必须在其中使用 javascript 来显示地图。 我正在使用加载存储在资产文件夹中的 HTML 文件的 WebView。

    wv=(WebView)findViewById(R.id.webView1);
    wvs=wv.getSettings();
    wv.setWebChromeClient(new WebChromeClient());
    wvs.setJavaScriptEnabled(true);
    wv.addJavascriptInterface(new WebAppInterface(this), "Android");
    wv.loadUrl("file:///android_asset/android_index.html");

在此文件中,代码使用 JavaScript 方法显示地图。 我必须将地图居中(并添加一个图钉)到当前设备位置。 执行这些操作的方法可以正常工作,并且我可以正确获取当前设备位置。 所以,我必须将坐标传递给 HTML 文件中调用的 JavaScript 方法。

这里是我应该使用坐标的脚本行:

jQuery(function ($) {
        var map;
        ...
        map.setCenter(/*here latitude*/,/*here longtitude*/);
        ..
});

如何将我从设备获得的值从 Java 传递给 JavaScript?

【问题讨论】:

标签: javascript android android-webview


【解决方案1】:

在 Android 4.3 及更低版本和 Android 4.4+ 上,android:targetSdkVersion 设置为 18 或更低版本,在WebView 上调用loadUrl(),使用javascript: URL,方法与在桌面操作系统。

在将android:targetSdkVersion 设置为19 或更高版本的Android 4.4+ 上,对WebView 使用新的evaluateJavaScript() 方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-03-28
    • 2018-02-27
    • 1970-01-01
    • 2011-06-21
    • 2013-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多