有没有办法将GPS坐标传递给webview中显示的地图?

时间:2013-12-24 07:24:19

标签: android map webview gps

我有一个非常简单的Android应用程序显示此URL:

http://www.ahuzot.co.il/Map/Parking/

在一个简单的webview显示中。 它只是通过webview显示地图。

有没有办法使用手机的GPS并将铜线传递到这个特定的地图? 为了使用户能够在地图上找到自己?

提前致谢

1 个答案:

答案 0 :(得分:1)

从此代码中,根据您的需求进行调整;)

main.xml中

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="fill_parent"
    android:layout_height="fill_parent">
        <WebView android:id="@+id/webview1" android:layout_width="fill_parent"
            android:layout_height="fill_parent" />
</LinearLayout>

MainActivity.Java

public class MainActivity extends Activity {

    WebView webview;

    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        webview=(WebView)findViewById(R.id.webview1);
        webview.setWebViewClient(new MyWebViewClient());
            webview.setJavaScriptEnabled(true);
        openURL();
    }

    private void openURL() {
        webview.loadUrl('http://www.ahuzot.co.il/Map/Parking/');
        webview.requestFocus();
    }

    private class MyWebViewClient extends WebViewClient {
          @Override
          public boolean shouldOverrideUrlLoading(WebView view, String url) {
              view.loadUrl(url);
              return true;
          }
    }

}

修改 现在,如果您可以访问Web应用程序的源代码,那么您需要在Web应用程序(即locateOnMap)上启用一个javascript方法,该方法接收您想要在地图上找到的纬度和经度作为参数。此方法应负责使用新位置更新地图。加载地图后,再次调用webview的 loadUrl 方法。下面是一个调用示例:

webview.loadUrl("javascript:locateOnMap('37.3833', '-5.9833');