2

こんにちは、最近、デバイスにインストールされているネイティブ マップを開くために cordova を使用する必要がありました。

function getMapsUrl() {
   var isAndroid = navigator.userAgent.match(/Android/);
   var isIos = navigator.userAgent.match(/(iPhone|iPod|iPad)/);

   if (isAndroid) {
        return "geo:0,0?q=";
   }

   if (isIos) {
       return "maps:q=";
   }

   return "http://maps.google.com/maps?q=";
}

この関数はアプリケーションが最初に開かれたときに評価され、文字列 get's set witch を持つ変数がアプリ全体でグローバルに使用され、デバイスに応じて次のようなリンクが作成されます。

 <a href="maps:q=Linie 27, 5405 AR UDEN, Nederland">iOS Version</a>
 <a href="geo:0,0?q=Linie 27, 5405 AR UDEN, Nederland">Android Version</a>

これは、iOS5 を除くほとんどのデバイスで動作します。Apple マップが iOS6 で導入され、iOS5 はまだ Google マップを使用しているため、これが発生したと理解しています。

iOS5 でネイティブ マップ アプリを開くためにこれらすべてを試しましたが、うまくいきませんでした。

  <a href="http://maps.google.com/maps?q=Linie 27, 5405 AR UDEN, Nederland">Android Version Q</a>
  br/>
  <a href="http://maps.apple.com/maps?q=Linie 27, 5405 AR UDEN, Nederland">iOS Version Q</a>               
  <br/>
  <a href="http://maps.google.com/maps?saddr=Linie 27, 5405 AR UDEN, Nederland">Android Version saddr</a>
  <br/>
  <a href="http://maps.apple.com/maps?saddr=Linie 27, 5405 AR UDEN, Nederland">iOS Version saddr</a>
  <br/>
   <a href="maps:q=Linie 27, 5405 AR UDEN, Nederland">iOS curent Version</a>
   <br/>
   <a href="maps://maps.apple.com/?q=Linie 27, 5405 AR UDEN, Nederland">IOS with google maps</a>
    <br/>
    <a href="maps:q=Linie 27, 5405 AR UDEN, Nederland">iOS curent Version</a>
    <br/>
    <a href="comgooglemaps://?q=Linie 27, 5405 AR UDEN, Nederland">From Google Docs for iOS app</a>
    <div data-bind="click: WindowOpenClick ">Window.Open</div>
    <div data-bind="click: WindowLocationClick">Window.location</div>
    <div data-bind="click: WindowOpenClickBlackPage">Window.Open Blank</div>

function WindowOpenClick() {
        var mapsUrl = "http://maps.google.com/maps?q=Linie 27, 5405 AR UDEN, Nederland";
        window.open(mapsUrl, '_system', 'location=yes');
    }

    function WindowOpenClickBlackPage() {
        var mapsUrl = "http://maps.google.com/maps?q=Linie 27, 5405 AR UDEN, Nederland";
        window.open(mapsUrl, '_blank', 'location=yes');
    }

    function WindowLocationClick() {
        var mapsUrl = "http://maps.google.com/maps?q=Linie 27, 5405 AR UDEN, Nederland";
        window.location.href = mapsUrl;
    }

上記のものをすべて追加しましたが、それらはアプリの別のファイルにあります。

iOS5でマップアプリを開く方法を知っている人はいますか?

4

1 に答える 1

1

comgooglemaps://?q=Linie 27, 5405 AR UDEN, NederlandGoogle マップ iOS で言及されている URL スキームを使用してください。このリンクを確認してください。

于 2013-11-11T12:14:12.673 に答える