現在、私のアプリには、SLComposeViewController を使用して Facebook と Twitter で共有するオプションがあります。
SLComposeViewController *fbComposeViewController = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
[fbComposeViewController setInitialText:text_short];
[fbComposeViewController addURL:url];
[self.navigationController presentViewController:fbComposeViewController
animated:YES
completion:^{
NSLog(@"fb activity completed");
}];
を使用して、Gmail、Whatsapp、メッセージ、メールなどの他のサイトと共有できます
UIActivityViewController *controller = [[UIActivityViewController alloc] initWithActivityItems:@[text, url]
applicationActivities:nil];
controller.excludedActivityTypes = @[UIActivityTypePostToWeibo,
UIActivityTypePrint,
UIActivityTypeCopyToPasteboard,
UIActivityTypeAssignToContact,
UIActivityTypeSaveToCameraRoll,
UIActivityTypeAddToReadingList,
UIActivityTypePostToFlickr,
UIActivityTypePostToVimeo,
UIActivityTypePostToTencentWeibo,
UIActivityTypeAirDrop,
UIActivityTypePostToFacebook,
UIActivityTypePostToTwitter
];
[self presentViewController:controller animated:YES completion:nil];
ただし、これにより、ユーザーが起動する必要があるアプリを選択する必要がある共有シートが起動します。アクティビティ名を指定して共有ダイアログを直接起動する方法はありますか? たとえば、Whatsapp、メール、および Uber でのテキストによる招待。