我在 iOS6 中使用新的 Facebook 集成,如下所示:
SLComposeViewController *fbController = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
if([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) {
SLComposeViewControllerCompletionHandler __block completionHandler=^(SLComposeViewControllerResult result){
[fbController dismissViewControllerAnimated:YES completion:nil];
switch(result){
case SLComposeViewControllerResultCancelled:
default:
{
NSLog(@"Cancelled.....");
}
break;
case SLComposeViewControllerResultDone:
{
NSLog(@"Posted....");
}
break;
}};
//[fbController addImage:[UIImage imageNamed:@"1.jpg"]];
[fbController setInitialText:@"Test message"];
[fbController addURL:[NSURL URLWithString:self.asset.url]];
[fbController setCompletionHandler:completionHandler];
[self presentViewController:fbController animated:YES completion:nil];
} else {
NSLog(@"no facebook setup");
}
这里的问题是,我在没有登录 Facebook 的情况下测试它,我得到的只是日志消息。
** 奇怪的是,我在模拟器中得到了对话框,但没有得到设备!**
我如何向用户显示提醒,告知他们需要登录 Facebook?我看过系统警报的屏幕截图,但由于某种原因我没有看到。我做错了什么?
最佳答案
删除对 [SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook] 的检查为我解决了这个问题。
关于objective-c - iOS6 Facebook : What to do if user has not configured Facebook?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12536108/