ios 6 - 在应用程序中发布到 Facebook 无法在设备上运行

Posted

技术标签:

【中文标题】ios 6 - 在应用程序中发布到 Facebook 无法在设备上运行【英文标题】:ios 6 - Post to Facebook in app not working on device 【发布时间】:2013-02-20 18:49:31 【问题描述】:

我有一个按钮可以调出 Facebook 用户界面来发帖,但它在设备上没有任何作用。它在模拟器中运行良好,但在手机上根本不执行任何操作。

不确定我能做些什么来找出问题 -

这是我的 ViewController.h

- (IBAction)postToFacebook:(id)sender;

ViewController.m

- (IBAction)postToFacebook:(id)sender 
    if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) 
        SLComposeViewController *controller = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
        [controller setInitialText:@"Posted from ios App Test -- It works!"];
        [self presentViewController:controller animated:YES completion:Nil];
    

【问题讨论】:

【参考方案1】:

您的代码正在模拟器上运行,因为 isAvailableForServiceType 在模拟器中总是返回 1。在设备中,您需要从设置中设置一个 facebook 帐户。

或者最好去掉这个检查

[SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]

连同发布表一起,将出现操作系统警报,通知需要设置帐户才能发布。

【讨论】:

好的;我已经删除了它,它确实可以在手机上使用。既然我在设备上有一个 Facebook 帐户,它不应该一直有效吗? 您能否确认 1) 您已在 iPhone 的设置中设置了 facebook 帐户。 2) postToFacebook 正在设备上被调用(在那里放置一个断点。3)没有 isAvailableForServiceType 检查 & self 不是 nil。 我想我最初误解了;似乎在设置中登录 Facebook 与简单地下载应用程序并登录之间存在差异。我通过手机上的设置登录;以前没有这样做过。无论如何,我可以看到在 isavailableforservice 条件下启动帖子对于我正在做的事情来说并不是最好的主意。谢谢

以上是关于ios 6 - 在应用程序中发布到 Facebook 无法在设备上运行的主要内容,如果未能解决你的问题,请参考以下文章

在 Libgdx 中嵌入浏览器

无法使用 quickblox(iOS)登录 facebook

ios 6 - 在应用程序中发布到 Facebook 无法在设备上运行

Facebook SDK 错误 Domain=com.facebook.sdk Code=5 在 ios 中获取好友列表时

Facebook iOS SDK 和护照-facebook 身份验证

在 OCUnit 应用程序测试中绕过登录/身份验证