我刚刚开始看到Facebook Connect身份验证的问题。如果我安装了iOS应用程序版本3.4.4,则会调用我的委托的fbDidNotLogin方法,并显示错误消息“用户拒绝了您的请求”。当我卸载FB应用程序时,身份验证工作正常。还有其他人看到这个吗?有谁知道如何绕过这个bug?
这是我对Facebook对象的调用:
[[app facebook] authorize:[NSArray arrayWithObjects:
@"publish_stream", @"offline_access", nil]
delegate:app];
答案 0 :(得分:15)
确保您的应用程序包ID已在应用程序的Facebook页面上正确设置。
我认为他们刚刚开始执行此操作,这就是为什么它刚刚破产。
您应该可以通过进入Facebook上的应用设置,然后点击获取应用ID的屏幕上的“编辑设置”来更改此设置。 “Mobile Native”部分允许您更改iOS Bundle ID以匹配Info.plist中的Bundle Identifier。
希望这有助于某人!知道你可以使用最新的Facebook应用程序,这可能是一个像上面描述的配置问题。
答案 1 :(得分:4)
我可以确认我在这里遇到同样的问题。我回溯了一下,我看到facebook应用程序正在使用URL中的查询字符串打开我的应用程序:
ERROR_REASON =用户%5Fdenied&安培;误差=存取%5Fdenied&安培; ERROR_DESCRIPTION =的%2Buser%2Bdenied%2Byour%2Brequest%2E%3F%5F
我猜不幸的是,除了等待,我们无能为力:S
答案 2 :(得分:1)
这很明显,但如果您的应用程序是沙盒,那么您需要确保在Facebook应用程序设置中使用它登录的所有人都是'Tester'或更高版本。 : - $
答案 3 :(得分:0)
正如this thread中所指出的,您可以强制FBConnect使用Safari对话框而不是快速应用程序切换到已安装的FB应用程序。只需在Facebook.m中注释掉调用FB应用程序的代码块。
这是绕过FB错误的一种方法,直到他们修复他们的应用程序。它不是一个理想的解决方案,但它确实有效。