2017-01-29 8 views
2

私の携帯電話をiOS 10.2.1にアップグレードするだけです。Googleマップがインストールされていることを確認する - iOS 10.2.1

私のSwift App(3.0使用)では、Googleマップが電話にインストールされているかどうかを確認しようとしています。はいの場合は、Googleマップでこのアドレスを開きます。

UIApplication.shared.canOpenURL(NSURL(string:"comgooglemaps://")! as URL) 

Google Mapsがインストールされていても、式はfalseと評価されます。

奇妙なことに、私はこの

UIApplication.shared.open(NSURL(string: 
      "comgooglemaps://?saddr=&daddr=\(lat),\(lon)&directionsmode=driving")! as URL, options: [:], completionHandler: nil) 

とスウィフトにGoogleマップを開くことができますが真であると評価するから最初の発現を妨げるのiOS 10.2.1の変化のいくつかの種類がありましたか?

URLは同じ(comgooglemaps)であるように思わ

plistの中に今必要なものはありますか?

+1

[こちら](http://stackoverflow.com/a/34331058/6541007)をよくお調べください。 – OOPer

+0

と私は馬鹿のように感じる。 @OOPer –

+1

[Google MapsのURLスキームがiOS 9で動作しない]可能な複製(http://stackoverflow.com/questions/32686515/google-maps-url-scheme-not-working-on-ios-9) – rmaddy

答えて

4

何を実装していることは合法ですが、あなたはLSApplicationQueriesSchemes配列を追加し、それに「comgooglemaps」を追加することによって、アプリケーションのInfo.plistにURLスキームを追加する必要があります。

LSApplicationQueriesSchemes( Array - iOS)アプリケーションが UIApplicationクラスのcanOpenURL:メソッドで使用できるようにするURLスキーム を指定します。アプリに のcanOpenURL:メソッドで使用させるURLスキームごとに、この配列に文字列として追加します。 canOpenURL: サポートされているスキームの宣言とそのメソッドの使用に関する重要な情報については、メソッドの説明を参照してください。詳細については、あなたが(上記の)マニュアルを確認したい場合があります

enter image description here

次のように-somehow-でなければなりません。

関連する問題