酢ろぐ!

カレーが嫌いなスマートフォンアプリプログラマのブログ。

iOSで地図アプリへ位置座標を渡して連携起動する

本記事は「カスタムURLスキームを使って地図アプリに位置座標を渡して連携起動する - iOSアプリ開発の逆引き辞典」に転記しました。


iPhoneOSはマルチタスクではないので、アプリの連携起動を行う場合一旦自分自身を閉じる必要があります、がここでは関係ない話でした。今日はGoogle Mapsアプリに対して位置情報を渡して起動させたい場合、どのようにして連携起動を行うのかをご紹介したいと思います。

NSString* name = [item valueForKey:@"桃山大学"];
NSString* urlstr = [NSString stringWithFormat:@"http://maps.google.com/maps?q=%@@%1.6f,%1.6f",
	[name stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding], 135.5583577, 34.8477655];

NSURL* url = [NSURL URLWithString: urlstr];
if ([[UIApplication sharedApplication] canOpenURL:url]) {
	[[UIApplication sharedApplication] openURL:url];
}


UIApplicationクラスは、アプリケーション全体を管理するクラスです。UIApplicationクラスを使う事で、自動スリープのON/OFFの設定が出来たり、アプリケーションバッヂの表示(ホーム画面のアイコンの上に表示される赤丸の数字)や、よく通信中であることを表すインジケータの表示が出来ます。使い勝手良いですね。