昨日のエントリーでigoファイルまで保存できたので、いよいよ、今日は、Instagramを起動する方法について。
//igoファイルまでのパス
NSString *fileName;
interactionController = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:fileName]];
interactionController.UTI = @"com.instagram.exclusivegram";
//Instagramがオープンできない場合(selfは、UIVIewControllerを継承したクラス)
if(![interactionController presentOpenInMenuFromRect:self.view.frame inView:self.view animated:YES]){
}
上のプログラムで実際に試したところうまくいきました。
これを実現するにあたり、1個だけ注意点。
下のプログラムだとクラッシュしましたー。
//igoファイルまでのパス
NSString *fileName;
UIDocumentInteractionController *interactionController = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:fileName]];
interactionController.UTI = @"com.instagram.exclusivegram";
//Instagramがオープンできない場合(selfは、UIVIewControllerを継承したクラス)
if(![interactionController presentOpenInMenuFromRect:self.view.frame inView:self.view animated:YES]){
}
違いは、前者は、インスタンス変数として保持しているのに対し、後者は、その場で変数宣言しているところ。
結論から書くと、どうやら、インスタンス変数として保持していないといけないようです。
今後、実装する上で気をつけたいですね。