使用Facebook iOS SDK 2,我如何喜欢一个页面? - “申请必须在白名单上”

时间:2010-09-28 04:20:29

标签: iphone xcode facebook oauth

如何使用新的Facebook iOS SDK“喜欢”某个页面? (http://github.com/facebook/facebook-ios-sdk)

我目前正试图这样做:

NSMutableDictionary *dict = [[NSMutableDictionary alloc] initWithObjectsAndKeys:[_facebook accessToken],@"access_token",nil];
[_facebook requestWithGraphPath:@"cocacola/likes" andParams:dict andHttpMethod:@"POST" andDelegate:self];

这不起作用。当我得到NSLog([error description]);时:

Error Domain=facebookErrDomain Code=10000 "The operation couldn’t be completed. (facebookErrDomain error 10000.)" UserInfo=0x6a50160 {error=<CFBasicHash 0x6a4fd40 [0x250b380]>{type = mutable dict, count = 2,
entries =>
    2 : <CFString 0x6a4fc80 [0x250b380]>{contents = "type"} = <CFString 0x6a50000 [0x250b380]>{contents = "OAuthException"}
    3 : <CFString 0x6a500e0 [0x250b380]>{contents = "message"} = <CFString 0x6a50080 [0x250b380]>{contents = "(#3) Application must be on whitelist"}
}
}

我已经在高级设置下将我的IP(我的计算机的IP地址,因为我从模拟器运行,在访问www.whatismyip.com时获得)添加到我的Facebook应用程序的白名单中的白名单。

谢谢!
特里斯坦

4 个答案:

答案 0 :(得分:3)

看起来这是一个众所周知但未经证实的错误:http://bugs.developers.facebook.net/show_bug.cgi?id=10714

如果您在Facebook的错误跟踪器中投票支持该错误,可能会有所帮助。

答案 1 :(得分:2)

已经建议使用部分解决方案,但是如果用户已经登录到FB,则用户体验非常好 - 这可能对很多用户而非所有用户有用,因此它仍然是一种不完美的方法。

http://angelolloqui.blogspot.com/2010/11/facebook-like-button-on-ios.html

答案 2 :(得分:2)

1)使用facebook iOS SDk检查用户是否已登录。
2)用户登录后,将facebook Like API加载到webview中。

http://developers.facebook.com/docs/reference/plugins/like/#
你应该加载这样的东西(格式与适当的参数,你看到%@,%i):

http://www.facebook.com/plugins/like.php?href=%@&layout=%@&show_faces=%@&width=%i&action=%@&colorscheme=%@&font=%@

3)利润。

此外,用户无需登录的原因是因为一旦他们使用Facebook iOS SDK登录屏幕登录就会保存cookie(如果您在应用程序中执行此操作而不是Safari / FB应用程序)。

答案 3 :(得分:0)

这不是一个错误,它被设计破坏了。使用Facebook API,您只能喜欢帖子(通过发送帖子请求到https://graph.facebook.com/POST_ID/likes&auth_token= ...),没有别的。现在只有一个应用程序允许使用facebook api喜欢页面,这是“原因”。