无法使用Facebook iOS SDK

时间:2015-08-12 09:03:30

标签: ios objective-c facebook facebook-like

我正在尝试像在Objective C应用程序中那样实现。如果我没有登录Facebook,则在点击“赞”按钮后,应用程序会打开登录屏幕。我会登录我的帐户。然后屏幕变成浅灰色带有Facebook的灰色标志一段时间(之前有2个很快显示灰色的Facebook屏幕),然后我被重定向回我的应用程序。如果我在运行应用程序时登录Facebook,除了没有显示登录屏幕外,一切都是相同的。

所以我的问题是,我没有得到正确的确认对话框,该对话框应该在登录FB帐户后显示,然后我被重定向回我的应用程序。喜欢没有放置。

这种行为的原因是什么?

我已将所有需要的3行放入.plist中,这就是我创建按钮的方式(p_webView是我的UIWebView的子类):

if (p_webView.fbLikeButton == nil) {
    p_webView.fbLikeButton = [[FBSDKLikeControl alloc] init];
}
p_webView.fbLikeButton.objectID = p_webView.article.url;
[p_webView.fbLikeButton setFrame:CGRectMake(p_webView.fbLikeButton.frame.origin.x, height + 5, p_webView.fbLikeButton.frame.size.width, p_webView.fbLikeButton.frame.size.height)];
[p_webView.fbLikeButton setCenter:CGPointMake(p_webView.frame.size.width / 2, p_webView.fbLikeButton.center.y)];
[p_webView.scrollView addSubview:p_webView.fbLikeButton];

更多信息 - 我在模拟器上试过这个(我没有FB应用程序,所以它只使用Safari)。登录后,我收到错误:

  

“您请求的页面目前无法显示。它可能暂时不可用,您点击的链接可能已损坏或已过期,或者您可能无权查看此页面。”

由于可能很难找到解决方案 - 需要在FB应用程序中作为管理员,开发人员或测试人员,以便在测试未经Apple批准使用本机按钮的应用程序时使用类似按钮。

1 个答案:

答案 0 :(得分:6)

你做得对。 也许你错过了一些东西:

  1. 您必须创建fb app id并将其添加到iOS应用。所以你可以点击Like按钮打开fb应用程序。(我想你这样做了)

  2. 您必须将fb acc(使用登录)添加到fb应用中的开发/测试角色。如果不是,您将在登录到fb(在fb app或safari中)后被推回iOS应用程序。 < ---我认为你的问题就在这里。 参考:https://developers.facebook.com/docs/apps/test-users

  3. 如果您希望每个人都可以登录并喜欢,则必须提交您的应用以供审核(使用Native Like按钮)。之后,每个人都可以使用Like按钮。

  4. 对于fb应用设置,在“状态和审核”标签中,启用“是否要将此应用及其所有实时功能提供给普通大众? “

    之后,您可以在信息中心标签中看到“此应用是公开的,可供所有用户使用”,而不是“此应用处于开发模式并且只能由应用管理员,开发人员和测试人员使用“