ここでたくさんの投稿、多数のオンラインチュートリアル/サンプルコードを確認しましたが、困惑しています。私のアプリでは、iOS7 によってネイティブに提供された UIActivityController を、アプリに適した共有オプション (AirDrop とメール) とともに表示しても問題ありません。
私が抱えている特定の問題は、ユーザーがメールで共有するオプションを選択したときに、保存したドキュメントが電子メール メッセージに添付されることです。メッセージ本文はテキストに設定されていますが、添付ファイルは MIA です。関連するコードは次のとおりです。
// 現在表示されているレコードで共有する XML ファイルを生成します... NSURL *url = [self createShareFile];
UIActivityViewController *controller = [[UIActivityViewController alloc] initWithActivityItems:@[@"Data shared from my app.", url] applicationActivities:nil];
// Filter out the sharing methods we're not interested in....
controller.excludedActivityTypes = @[UIActivityTypePostToTwitter, UIActivityTypePostToFacebook,
UIActivityTypePostToWeibo,
UIActivityTypeMessage,
UIActivityTypePrint, UIActivityTypeCopyToPasteboard,
UIActivityTypeAssignToContact, UIActivityTypeSaveToCameraRoll,
UIActivityTypeAddToReadingList, UIActivityTypePostToFlickr,
UIActivityTypePostToVimeo, UIActivityTypePostToTencentWeibo];
// Now display the sharing view controller.
[self presentViewController:controller animated:YES completion:nil];
私は何が欠けていますか?私のファイルは適切に作成されており、コンテンツは正しく、NSURL オブジェクトにはファイルへの適切なパスが含まれています。
ありがとう!