我想在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按钮时没有任何反应。
请帮助我
答案 0 :(得分:2)
可能的错误是您的iphone 5未配置任何fb帐户。 [SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]
在这种情况下将返回NO
根据SLComposeViewController的documentation,isAvailableForServiceType“返回一个布尔值,指示服务是否可访问且至少设置了一个帐户...要使帐户可用,必须记录用户进入设备设置中的社交服务。“
注意:每当您添加if条件时,也请使用else条件。 #codingstandard