【问题标题】:Phonegap : cannot open iOS 6 native maps applicationPhonegap:无法打开 iOS 6 原生地图应用程序
【发布时间】:2013-03-07 05:33:39
【问题描述】:

我在使用 Phonegap 2.3 的 iOS 上基于 phonegap build (build.phonegap.com) 构建的应用遇到问题。 我正在尝试使用此链接打开本机地图应用程序:

<a id="gmap_image" href=""> </a>

设置href属性的js代码:

$("#gmap_image").href('http://maps.apple.com/?q='+$xml.find( "adresse" ).text());

我已经看到,要使用链接打开本机地图应用程序,我必须提供一个基于 maps.apple.com 域 (Apple Map Links) 的 url。

但是当我点击链接时,所发生的只是页面刷新(我不知道为什么它也会刷新,因为没有代码要求这样做)。

有人有想法吗?

问候,

【问题讨论】:

    标签: ios cordova map


    【解决方案1】:

    也许为时已晚,但我遇到了同样的问题。

    试试这个方法:

    $("#gmap_image").href('maps:q='+$xml.find( "adresse" ).text());
    

    只需将http://maps.apple.com/?q= 更改为maps:q= 对我有用

    【讨论】:

    【解决方案2】:

    您可以使用 URL Scheme 中的此标头在 iOS 设备上启动 google Maps 应用程序。 comgooglemaps:// 这是根据此处找到的开发人员文档。 https://developers.google.com/maps/documentation/ios/urlscheme

    例如,在 iOS6 中打开 Google 地图应用并获取从纽约到华盛顿特区的路线的网络链接如下所示。

        <a href="comgooglemaps://?saddr=New+York,+NY&daddr=Washington+DC&directionsmode=driving">Directions from New York, NY to Washington DC</a>
    

    【讨论】:

      【解决方案3】:

      如果您使用的是最新的 PhoneGap/Cordova 版本之一,似乎无法再从标准“a href=xxx”标签打开 safari 或地图。

      为了打开地图,您需要附加一个点击事件并使用以下方法打开链接:

       window.open('http://maps.apple.com/?q=whavever', '_system');
      

      在 Phonegap 中,window.open() 将打开一个带有新应用程序浏览器的链接,但是,如果您将“_system”指定为第二个参数,它会将 URL 发送到操作系统(因此,打开地图应用程序在这种情况下)。

      【讨论】:

        【解决方案4】:

        不幸的是,这在 iOS 6 上是不行的,因为 Google 地图不再是操作系统的“原生”部分。

        虽然您仍然可以启动 Apple 地图,因为这是本机支持的。

        【讨论】:

          【解决方案5】:

          试试这个

          $('#map').bind('tap', function(){
              var url = 'http://maps.google.com/maps?';
              url += 'q=[place_name]'; //add ur querystrings
          
              // open the native maps app by calling window location
              window.location = url;
          });
          

          【讨论】:

          • 您好,感谢您的回答。我尝试了您的代码,但它在与应用程序相同的 web 视图中打开 maps.google.com。我希望它打开原生 iOS 地图应用程序并退出我的第一个应用程序。
          猜你喜欢
          • 2017-07-25
          • 1970-01-01
          • 2013-03-22
          • 1970-01-01
          • 2012-10-08
          • 2012-01-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多