我在项目中添加了UIActivityController。看起来在此特定主题上没有多少可用的帮助。我面临的问题是链接以一种怪异的方式在Facebook上共享,而不是通常在Facebook上共享的方式。为了更合理,照片和链接都放在iOS Photos文件夹中,而没有任何更改选项。

下面是示例图片,目前它们如何在Facebook上共享:

通常如何在Facebook上分享它们以及我想要什么:

这是我用来在项目中添加UIActivityController的代码:

UIActivityViewController *objVC = [[UIActivityViewController alloc]initWithActivityItems:[NSArray arrayWithObjects:titleString, [NSURL URLWithString:urlString], imageTaker, nil] applicationActivities:nil];


[self presentViewController:objVC animated:YES completion:nil];
[objVC setCompletionHandler:^(NSString *activityType, BOOL completed)
 {
     NSLog(@"Activity = %@",activityType);
     NSLog(@"Completed Status = %d",completed);

     if (completed)
     {
         UIAlertView *objalert = [[UIAlertView alloc]initWithTitle:@"Alert" message:@"Posting was success" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
         [objalert show];
         objalert = nil;
     }else
     {
         UIAlertView *objalert = [[UIAlertView alloc]initWithTitle:@"Alert" message:@"Posting was not successful" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
         [objalert show];
         objalert = nil;
     }
 }];

除此之外,我还在控制台中收到一些警告,如下所示:
Registering unknown app identifier com.apple.mobilemail failed
Unable to find app identifier com.apple.mobilemail
Registering unknown app identifier com.apple.MobileSMS failed
Unable to find app identifier com.apple.MobileSMS

更新:我也尝试过集成REActivityController,这是一个实现相同功能但具有额外功能的库,但是我也面临着同样的问题。

最佳答案

要共享链接,请避免传递图像。因此,使用代码链接如下:

UIActivityViewController *objVC = [[UIActivityViewController alloc]initWithActivityItems:[NSArray arrayWithObjects:[NSURL URLWithString:urlString], nil] applicationActivities:nil];

或这个:
UIActivityViewController *objVC = [[UIActivityViewController alloc]initWithActivityItems:[NSArray arrayWithObjects:titleString, [NSURL URLWithString:urlString], nil] applicationActivities:nil];

要记住的关键是,如果您指定图像,则将其视为照片共享故事,并且标题和URL最终与照片标题相似。如果省略图像,则将其视为链接共享,并且标题将成为消息。

如果链接具有Open Graph标签,则最终的故事将在Facebook上正确呈现,并且通过正确呈现,我的意思是您将看到图片,标题,说明等。如果链接中未嵌入Open Graph标签,则该链接就很简单显示在结果故事中。

关于iphone - UIActivityController在Facebook上发布,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15569422/

10-10 00:59