在获得grantedPermissions“publish_actions”之后,现在我希望用户希望用户在不离开当前 View 的情况下将消息和图像(本地生成)发送到他们的Facebook时间线。
我试过FBSDKShareAPI接口(interface),但这不是我想要的效果。我希望用一个消息和一个图像来实现一个状态。我该怎么办?
FBSDKSharePhoto* photo = [[FBSDKSharePhoto alloc]init];
photo.image = self.shareImage;
photo.userGenerated = YES;
FBSDKSharePhotoContent * content = [[FBSDKSharePhotoContent alloc]init];
content.photos = @[photo];
if ([[FBSDKAccessToken currentAccessToken].permissions containsObject"publish_actions"]) {
FBSDKShareAPI * shareApi = [[FBSDKShareAPI alloc]init];
shareApi.message = self.tf.text;
[shareApi createOpenGraphObjectbject];
[FBSDKShareAPI shareWithContent:content delegate:self];
[shareApi share];
}
Best Answer-推荐答案 strong>
您分享了两次相同的内容,这可能是您无法通过一张图片(而是获得两张)获得一条状态消息的原因:
[FBSDKShareAPI shareWithContent:content delegate:self];
[shareApi share];
您可能不需要为此创建一个开放的图形对象。试试这个:
NSURL *imageURL = [NSURL URLWithString"https://upload.wikimedia.org/wikipedia/en/d/d3/Nasa_mer_marvin.jpg"];
UIImage *image = [UIImage imageWithData:[NSData dataWithContentsOfURL:imageURL]]; // taking image from Wikipedia for example purposes
FBSDKSharePhoto *photo = [[FBSDKSharePhoto alloc] init];
photo.image = image; // photo.image = self.shareImage;
photo.userGenerated = YES;
FBSDKSharePhotoContent *content = [[FBSDKSharePhotoContent alloc] init];
content.photos = @[photo];
if ([[FBSDKAccessToken currentAccessToken].permissions containsObject"publish_actions"]) {
FBSDKShareAPI * shareApi = [[FBSDKShareAPI alloc]init];
shareApi.message = @"Lorem Ipsum Dolor Sit Amet"; // shareApi.message = self.tf.text;
shareApi.shareContent = content;
[shareApi share];
}
关于iOS Facebook 分享,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/31313416/
|