次の方法で、SLRequest を使用して Facebook に投稿できました。
- (void)postScoreWithFBAccount:(ACAccount *)facebookAccount
{
NSString *messageToPost = [self.myString stringByAppendingString:@"https://www.example.com"];
NSDictionary *fbParameters = @{@"message": messageToPost};
NSURL *feedURL = [NSURL URLWithString:@"https://graph.facebook.com/me/feed"];
SLRequest *updateFeedRequest = [SLRequest requestForServiceType:SLServiceTypeFacebook requestMethod:SLRequestMethodPOST URL:feedURL parameters:fbParameters];
updateFeedRequest.account = facebookAccount;
[updateFeedRequest performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error)
{
if (responseData )
{
NSLog(@"Received Response: %@", [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding]);
if (urlResponse.statusCode >= 200 && urlResponse.statusCode < 300)
{
}
else
{
NSLog(@"HTTP %d Returned", urlResponse.statusCode);
}
}
else
{
[self showErrorAlertWithMessage:@"Unknown error occured, try again later!"];
}
}];
}
メッセージ文字列にURLを追加するだけで簡単にURLを添付できると思いました。問題は、Facebook でリンクとして認識されても、他の URL のように、Facebook でブラウジングするときにプレビューが表示されないことです。SLComposerViewController と同様に URL をアタッチする方法を知っている人はいますか?