我已在我的iphone应用程序中集成了Facebook连接。
当用户点击按钮时,我正在调用具有以下代码的方法。
session1 = [[FBSession sessionForApplication:kApiKey secret:kApiSecret delegate:self] retain];
dialog = [[[FBLoginDialog alloc] initWithSession:session1] autorelease];
[dialog show];
当用户使用他的用户名和密码登录Facebook时,如果用户名和密码不正确,则会正确显示该消息。
但是当用户输入正确的用户名和密码时,整个面部书籍窗口正在关闭,而不会给出任何消息。
答案 0 :(得分:1)
它正常工作。 Facebook窗口关闭意味着您的用户成功登录。你应该处理一些代表:
#pragma mark FBSessionDelegate
- (void)session:(FBSession*)session didLogin:(FBUID)uid {
}
- (void)sessionDidNotLogin:(FBSession*)session {
}
- (void)session:(FBSession*)session willLogout:(FBUID)uid {
}
- (void)sessionDidLogout:(FBSession*)session {
// NCLog(@"FacebookHelper logged out");
}
然后你会知道登录过程会发生什么
答案 1 :(得分:1)
Vodkhang有正确的答案,但也知道,因为Facebook连接商店信息的用户默认值,你应该插入一个
if (![session1 resume]) {
在调用对话框之前。这将确保将来使用该应用程序不会生成相同的登录对话框。
当会话恢复时,仍会调用didLogin:delegate函数,因此您仍然可以使用FBUID执行任何操作。您可以做的一件简单事情是在Interface Builder中创建一个隐藏的Label,并将FBUID分配给didLogin函数中的该标签。这样,如果稍后需要FBUID,您可以随时拉出该标签的文本。