通过UIActivityViewController向Facebook/Twitter共享图像在iOS 8中停止工作
我在iOS 7的FB/Twitter上有完美的图像共享代码通过UIActivityViewController向Facebook/Twitter共享图像在iOS 8中停止工作,facebook,twitter,ios8,sharing,uiactivityviewcontroller,Facebook,Twitter,Ios8,Sharing,Uiactivityviewcontroller,我在iOS 7的FB/Twitter上有完美的图像共享代码 - (NSArray *)activityViewController:(NSArray *)activityViewController itemsForActivityType:(NSString *)activityType { ... if ([activityType isEqualToString:UIActivityTypePostToFacebook] || [activityType isEqualTo
- (NSArray *)activityViewController:(NSArray *)activityViewController itemsForActivityType:(NSString *)activityType
{
...
if ([activityType isEqualToString:UIActivityTypePostToFacebook] ||
[activityType isEqualToString:UIActivityTypePostToTwitter])
return @[@"text", [UIImage imageNamed:@"myImage"]];
...
}
更新到iOS 8后,我只在发布窗口中看到空白图像,没有任何内容发布到社交网络
想法?以下是我为视频共享所做的。对于图像,您可以尝试同样的方法 我有视频数据,我首先保存到文档目录中的一个文件中,然后附加该文件
//write to a file [videoData writeToFile:[NSHomeDirectory() stringByAppendingPathComponent:@"Documents/image.mov"] atomically:YES];
然后
- (IBAction)ShareVideoWihFacebook:(id)sender {
//get the file url NSString* path = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/image.mov"];
NSURL *videoURL = [NSURL fileURLWithPath:path];
UIActivityViewController * activityVC = [[UIActivityViewController alloc] initWithActivityItems:@[videoURL,@"Created by ..."] applicationActivities:NULL];
[activityVC setExcludedActivityTypes:@[ UIActivityTypeMail,UIActivityTypeAssignToContact, UIActivityTypeCopyToPasteboard, UIActivityTypePrint, UIActivityTypePostToWeibo,UIActivityTypeMessage,UIActivityTypeAirDrop,UIActivityTypeSaveToCameraRoll]];
[activityVC setValue:@"My Video" forKey:@"subject"];
[activityVC setCompletionHandler:^(NSString *activityType, BOOL completed) {
//NSLog(@"completed dialog - activity: %@ - finished flag: %d", activityType, completed);
}];
[self presentViewController:activityVC animated:TRUE completion:nil];
}