Google地图:在移动应用上嵌入多个位置和路线

时间:2012-12-26 20:30:40

标签: android ios google-maps cordova jquery-mobile

我正在为拥有4个办公室/建筑物的医疗诊所创建一个移动应用程序。我想创建一个标记所有4个位置的Google地图,并为用户提供获取每个位置路线的选项。

我正在Phonegap和Jquery mobile中构建这个应用程序。到目前为止,我发现的最接近的是:Direction example

如果启用了GPS或使用地理位置,我还希望“起始”字段默认为用户的位置。

执行此操作的常见做法是什么(从可用性的角度来看)?你知道我可以参考的任何资源吗?

2 个答案:

答案 0 :(得分:1)

要在项目中使用gps,您可以使用以下代码

if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition( 

    function (position) {  

    // Did we get the position correctly?
    // alert (position.coords.latitude);

    // To see everything available in the position.coords array:
    // for (key in position.coords) {alert(key)}

    mapServiceProvider(position.coords.latitude,position.coords.longitude);

    }, 
    // next function is the error callback
    function (error)
    {
        switch(error.code) 
        {
            case error.TIMEOUT:
                alert ('Timeout');
                break;
            case error.POSITION_UNAVAILABLE:
                alert ('Position unavailable');
                break;
            case error.PERMISSION_DENIED:
                alert ('Permission denied');
                break;
            case error.UNKNOWN_ERROR:
                alert ('Unknown error');
                break;
        }
    });
}

可以找到herephonegap docs 当您拥有该位置时,您可以更改其值 你的表格。然后是使用插件的问题 谷歌地图与否。我个人没有使用任何。以来 您正在使用jquery mobile,您可以使用this

在init事件中创建地图(因此您只创建一次)和 触发pageshow事件中的resize事件,这样您就不会遇到问题 地图出现在屏幕的左上角等。 如果您使用我提到的插件,请查找刷新方法。 地图的容器必须具有大小。如果没有它 将无法正确显示,因为jqm将给出最小尺寸 到容器。你可以通过编程方式完成(检查 窗口高度和宽度)并计算空间(如果有的话) 你必须在计算中包含它的标题)。 最后,如果您在缩放时遇到问题,请查看this

答案 1 :(得分:0)

查看有关Google Maps inside jQuery Mobile的帖子。我认为这解决了你的问题。