アプリケーション間でURLを送る


■ 自作のアプリケーションから、特定のWebページをSafariで開く


NSURL *myURL = [NSURL URLWithString:@"http://d.hatena.ne.jp/iphone_dev"];
[[UIApplication sharedApplication] openURL:myURL];

■ 自作のアプリケーションのURL schemeを指定する

Info.pist内に、CFBundleURLTypesというDictionaryのArrayを用意。
各Dictionaryには、CFBundleURLName(reverse-DNSスタイルの一意な識別し)とCFBundleURLSchemes(schemeの文字列)を入れる。

CFBundleURLTypes
 
  
   CFBundleURLName
    jp.ne.hatena.iphone_dev.MyApp
   CFBundleURLSchemes
    
     myapp
     myapps
    

  


これでほかのアプリから、次のコードを実行することで、先ほどのアプリーケーションに任意のURLを渡すことができる。


NSURL *myURL = [NSURL URLWithString:@"myapp://d.hatena.ne.jp/iphone_dev"];
[[UIApplication sharedApplication] openURL:myURL];