无法点赞使用 Facebook iOS SDK

Unable to like using Facebook iOS SDK

我正在尝试在我的 Objective C 应用程序中实现。如果我没有登录 Facebook,那么在点击 Like 按钮后,应用程序会打开登录屏幕。我将登录我的帐户。然后屏幕变成浅灰色并带有 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)。登录后,出现错误:

"The page you requested cannot be displayed at the moment. It may be temporarily unavailable, the link you clicked on may be broken or expired, or you may not have permission to view this page."

因为可能很难找到解决方案 - 需要以管理员、开发人员或测试人员的身份进入 FB 应用程序,以便在测试尚未获得 Apple 批准使用原生点赞按钮的应用程序时,点赞按钮才能正常工作。

你做得对。 也许你错过了什么:

  1. 您必须创建 fb 应用程序 ID 并将其添加到 iOS 应用程序。所以你可以在点击“赞”按钮时打开 fb 应用程序。(我想你做到了)

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

  3. 如果您希望每个人都可以登录并点赞,您必须提交您的应用程序以供审核(使用本机点赞按钮)。之后大家就可以点赞了。

对于 fb 应用程序设置,在 “状态和评论” 选项卡中,打开 “你想制作此应用程序及其所有实时功能吗一般可用public?"

之后您可以在 仪表板 选项卡中看到 “此应用 public 并可供所有用户使用”,而不是 “此应用处于开发模式,只能由应用管理员、开发人员和测试人员使用”