Social.framework不适用于设备

时间:2013-02-26 08:21:08

标签: iphone facebook sharing

我想在Facebook上使用social.framework制作按钮。我做到了:

    #import <UIKit/UIKit.h>

    #import <Social/Social.h>

    @interface SocialSharingViewController : UIViewController

    - (IBAction)postToFacebook:(id)sender;

    @end

然后我加入m。文件:

- (IBAction)postToFacebook:(id)sender {
    if([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) {
            SLComposeViewController *controller = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];

        [controller setInitialText:@"First post from my iPhone app"];
        [self presentViewController:controller animated:YES completion:Nil];        
    }
}

它在模拟器中的工作非常完美,但是当我在我的iPhone 5设备上测试它时它不起作用。当我点击postToFacebook按钮时没有任何反应。

请帮助我

1 个答案:

答案 0 :(得分:2)

可能的错误是您的iphone 5未配置任何fb帐户。 [SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]在这种情况下将返回NO

根据SLComposeViewController的documentation,isAvailableForServiceType“返回一个布尔值,指示服务是否可访问且至少设置了一个帐户...要使帐户可用,必须记录用户进入设备设置中的社交服务。“

注意:每当您添加if条件时,也请使用else条件。 #codingstandard