我希望使用UIActivityViewController从我的应用程序分享视频到YouTube和Instagram。但是,我得到了以下图片中显示的输出。
但是我的期望是,将YouTube和Instagram应用程序添加到此UIActivityViewController以共享。如下图所示。该图像来自设备照片库。
我的代码是:
请给我一些处理此过程的想法。
但是我的期望是,将YouTube和Instagram应用程序添加到此UIActivityViewController以共享。如下图所示。该图像来自设备照片库。
我的代码是:
- (IBAction)ShareVideo:(id)sender
{
NSString *mySubject=@"Video Sharing ";
NSString *textLocationA=@"India";
NSString *textObject = @"Video Sharing Test";
NSData *videoData = [NSData dataWithContentsOfURL:movieURL]; //movieURL contains the video taken from photoAlbum
NSArray *objectsToShare = @[mySubject,textLocationA,textObject,videoData,movieURL];
UIActivityViewController *controller = [[UIActivityViewController alloc] initWithActivityItems:objectsToShare applicationActivities:nil];
// Exclude all activities except AirDrop.
NSArray *excludedActivities = @[UIActivityTypePostToTwitter, UIActivityTypePostToFacebook,
UIActivityTypePostToWeibo,
UIActivityTypeMessage, UIActivityTypeMail,
UIActivityTypePrint, UIActivityTypeCopyToPasteboard,
UIActivityTypeAssignToContact, UIActivityTypeSaveToCameraRoll,
UIActivityTypeAddToReadingList, UIActivityTypePostToFlickr,
UIActivityTypePostToVimeo, UIActivityTypePostToTencentWeibo];
controller.excludedActivityTypes = excludedActivities;
//-- define the activity view completion handler
controller.completionHandler = ^(NSString *activityType, BOOL completed){
NSLog(@"Activity Type selected: %@", activityType);
if (completed) {
NSLog(@"Selected activity was performed.");
} else {
if (activityType == NULL) {
NSLog(@"User dismissed the view controller without making a selection.");
} else {
NSLog(@"Activity was not performed.");
}
}
};
//-- define activity to be excluded (if any)
controller.excludedActivityTypes = [NSArray arrayWithObjects:UIActivityTypeAssignToContact, nil];
[controller setCompletionHandler:^(NSString *activityType, BOOL completed) {
if ([activityType isEqualToString:UIActivityTypePostToFacebook]) {
if (completed)
{
NSLog(@"facebook");
}
}
else if ([activityType isEqualToString:UIActivityTypeSaveToCameraRoll]) {
if (completed)
{
NSLog(@"Video Saved");
}
}
else if ([activityType isEqualToString:UIActivityTypePostToTwitter]) {
if (completed)
{
NSLog(@"twittter");
}
}
}];
// Present the controller
[self presentViewController:controller animated:YES completion:nil];
}
请给我一些处理此过程的想法。