SLComposeViewController“;“Facebook不可用”;

SLComposeViewController“;“Facebook不可用”;,facebook,ios6,slcomposeviewcontroller,Facebook,Ios6,Slcomposeviewcontroller,我用的是我上一个问题上的代码片段 但当我在设备和模拟器上运行它时,我得到的只是“Facebook不可用”,我会做错什么呢 我已经看过了可用的教程,并且包括了所需的库,因此我不确定还有什么地方做错了。在Settings.app/Facebook中,您需要设置一个帐户。 SLComposeViewController仅允许您在拥有帐户的情况下在FaceBook上发帖。这是正常的行为,FaceBook就是这样运作的:没有账户,在那里无事可做。 从iOS6开始,您可以在iOS中输入帐户,允许应用程序将此

我用的是我上一个问题上的代码片段

但当我在设备和模拟器上运行它时,我得到的只是“Facebook不可用”,我会做错什么呢

我已经看过了可用的教程,并且包括了所需的库,因此我不确定还有什么地方做错了。

在Settings.app/Facebook中,您需要设置一个帐户。
SLComposeViewController
仅允许您在拥有帐户的情况下在FaceBook上发帖。这是正常的行为,FaceBook就是这样运作的:没有账户,在那里无事可做。

从iOS6开始,您可以在iOS中输入帐户,允许应用程序将此帐户与某些iOS框架一起使用,而无需导入Facebook SDK。当然,你对Social.framework几乎没有什么选择,如果你想做更多的事情,比如时间表等,你必须使用FaceBook SDK。

如果FaceBook的帐户没有在Setting.app中设置,那就是noral。那么注册FaceBook/Twitter的人会不会有问题?只有当你没有设置这些服务时,它才会说它不可用?SLComposer ViewController允许用户在FaceBook上发布消息。但是你怎么知道该使用哪个帐户呢?记住,要使用FaceBook,你必须创建一个帐户或登录名。苹果从iOS6开始引入了从Settings.app的登录,这里是解决您问题的关键。如果用户未登录,则不得在FaceBook上发布帖子。如果您将此作为答案,我将接受。
if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) {
    SLComposeViewController *slComposeViewController = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];

    [slComposeViewController setInitialText:@"Your text"];
    [slComposeViewController addImage:[UIImage imageNamed:@"NameOfImage"]];
    [self presentViewController:slComposeViewController animated:YES completion:nil];
} else {
    //Show alert or in some way handle the fact that the device does not support this //feature
    NSLog(@"Facebook not available");
}