1
私のアプリケーションで、現在の場所から目的地までの経路をユーザーが確認できる機能を実装しています。ユーザーがボタンをタップすると、私は、Googleマップが私の現在の場所を選ぶことがようsaddr
のparam空のままにすることで、このGoogleマップがまだ実行されていないと、Googleマップで経路が正しく表示されない
if UIApplication.sharedApplication().canOpenURL(NSURL(string:"comgooglemaps://")!) {
let urlStr = String(format: "comgooglemaps://?saddr=&daddr=%f,%f&directionsmode=driving&zoom=14", lat, lng)
let url = NSURL(string:urlStr)!
UIApplication.sharedApplication().openURL(url)
}
のようなGoogleマップアプリを開きます。しかし、Googleマップが既に実行されていない場合、Googleマップはルートを初めて表示しません。現在の位置のみが表示され、ローディングサークルが表示されます。しかし、Google Mapsが稼働していて、地図を開いて経路を表示するとうまくいきます。
誰も同じ問題に直面しましたか?どんな助けもありがとう。おかげ
Googleドキュメント – raheem
回答ありがとう@raheem。しかし、このコードはアプリケーション内にマップを描画しますが、別のアプリケーションとしてGoogleマップを開くことについて話しています。 – umali
UIApplication * app = [UIApplication sharedApplication]; \t \t NSURL * url = [NSURL URLWithForm:@ "comgooglemaps://" saddr =%f、%f&daddr =%f、%f "、self.startLocation.latitude、self.startLocation.longitude 、self.destinationLocation.latitude、self.destinationLocation.longitude] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; \t [app openURL:url]; – raheem