0

別のアプリケーション (GDrive、iBooks など) を開きたいです。私のアプリケーションからUTIを使用しています。

このために、このサイトの次のコードを使用してみました。これは、アプリケーションから別のアプリケーションに PDF ファイルをエクスポートするために使用されました。

    NSString * filePath = [[NSBundle mainBundle] pathForResource:nil ofType:@"pdf"];    
documentController = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:filePath]];
documentController.delegate = self;
[documentController retain];
documentController.UTI = @"com.adobe.pdf";
[documentController presentOpenInMenuFromRect:CGRectZero inView:Parent animated:YES];

上記のコードは、アプリケーションからデバイスで利用可能なアプリケーション (GDrive、iBooks など) のリストを表示しますが、これらのアプリケーションのいずれかをクリックすると、アプリケーションからその選択したアプリケーションに 1 つの PDF がエクスポートされますが、 FilePath を「NIL」として使用しました。

私がやりたいことは、自分のアプリケーションから他のアプリケーションに PDF ファイルを送信することなく、自分のアプリケーションから自分のデバイスで利用可能な他のアプリケーション (GDrive、iBooks など) を開くことができるようにすることです。

4

3 に答える 3

1

カスタム URL が最適です。実装を含むサンプル コードについては、このリンクを参照してください。

于 2012-08-28T13:31:47.927 に答える
1

URL スキームは最適な方法ですが、もちろん、すべてのアプリに URL スキームがあるわけではありません。完全なリストはここにあります(この回答の時点で、Webサイトには何らかのエラーがあり、開かれません)。

それらを使用して Facebook アプリを開く方法の例:

NSURL *url = [NSURL URLWithString:@"fb://"];

if ([[UIApplication sharedApplication] canOpenURL:url])
{
    [[UIApplication sharedApplication] openURL:url];
} // else -> i.e. open Safari to Facebook's page or show an error message
于 2012-08-28T14:56:08.213 に答える