sessanの日記

主に開発技術関連でお勉強したことをまとめていくサイトです。

自分で開発したアプリケーションからSafariや電話を起動する

自分で開発したアプリケーションからSafariや電話を使用したいときは、UIApplicationクラスがサポートしているopenURLを使用する。

NSURL *url = [[NSURL alloc] initWithString:@"http://d.hatena.ne.jp/sessan/"];
[[UIApplication sharedApplication] openURL:url];

こんな感じでURLで指定したプロトコルごとにiOSの規定のアプリが立ち上がるようになっている。
上の例ではhttp:というプロトコルに対して、Safariが立ち上がるけど、電話をかけたいときは以下のような感じになる。

NSURL *url = [[NSURL alloc] initWithString:@"tel:090-xxxx-xxxx"];
[[UIApplication sharedApplication] openURL:url];

[UIApplication sharedApplication]で取得できるのは自アプリであり、Safariや電話ではない。