我遇到了一个有趣的错误,只是想知道是否有人遇到过同样的问题(因为我在谷歌 2 小时后找不到任何相关信息):
我像这样初始化 facebook SDK(最新版本 23. 2011 年 9 月):
facebook = [[Facebook alloc] initWithAppId:FACEBOOK_APP_ID andDelegate:self];
然后,我想在没有授权对话框的情况下向用户 Wall 发送一些信息:
NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
FACEBOOK_APP_ID, @"app_id",
@"http://itunes.apple.com/de/app/idxyz", @"link",
@"http://example.com/app_icon90px_d_p_i_g.png", @"picture",
@"AppName", @"name",
@"awesome new App. Look at it. Yadda Yadda Yadda", @"caption",
@"Here's an even more interesting description", @"description",
nil];
[facebook dialog:@"feed"
andParams:params
andDelegate:self];
发生了什么:Facebook 对话框打开并询问用户电子邮件和密码。很酷,到目前为止一切都很好。但是,如果我向系统提供我的电子邮件和密码,它不会变回贴墙对话框,而是显示 facebook 用户/主页。如果你现在中止对话并记忆起上面的方法,它会直接进入提要对话。首先使用 facebook 验证应用程序的解决方法是没有解决方案:-(
最佳答案
现在是 2012 年 5 月,我遇到了类似的问题,用户已经通过 SSO 进行了身份验证,但是当我调用提要对话框时,它会弹出带有登录页面的网络模式,而不是正常的提要对话框。
结果是 Facebook 服务器问题,经过一天的调试后,我无法再次重现该问题。
更多详情:
我不请求 offline_access 因为它将在 7 月被弃用。所以起初我认为这就是我的 session 过期的原因,我检查了所有关于 applicationDidBecomeActive 中自动扩展 token 的内容。但问题依然存在。
然后我什至打印出 token 并使用 graph.facebook.com/me/permissions 在浏览器上调用来检查 token 的有效性!
那天有几次,对话框只是返回一个错误,说“有错误,稍后再试”。所以就在那时,我决定放弃它,第二天再试一次,结果成功了!
关于iOS SDK : Feed Dialog without authorize gets send to facebook home page,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7529274/