【发布时间】:2011-01-28 14:27:03
【问题描述】:
当您在 iPhone 上使用 facebook connect 时,您是否必须使用框架中内置的登录按钮和登录屏幕?我问的原因是因为我也在使用 twitter,我希望他们登录用户时拥有与登录 facebook 时相同的用户体验。所以我可以复制 facebook connect 用于 twitter 的登录屏幕,也可以不一起使用 facebook connect 登录屏幕。
【问题讨论】:
当您在 iPhone 上使用 facebook connect 时,您是否必须使用框架中内置的登录按钮和登录屏幕?我问的原因是因为我也在使用 twitter,我希望他们登录用户时拥有与登录 facebook 时相同的用户体验。所以我可以复制 facebook connect 用于 twitter 的登录屏幕,也可以不一起使用 facebook connect 登录屏幕。
【问题讨论】:
登录按钮:没有。登录屏幕:是的。我将 FB Connect 集成添加到我的 iPhone FriendFeed 应用程序中,Stir 并跳过了登录按钮。相反,用户可以选择 UIActionSheet 上的“在 Facebook 上分享”按钮,然后应用会显示登录屏幕或自动发布链接,具体取决于用户是否经过身份验证。
这是为您准备的代码 sn-p。如果会话成功恢复,则将调用 FBSession 对象的委托上的方法。
if (![fbSession resume]) {
FBLoginDialog* dialog = [[[FBLoginDialog alloc] initWithSession:fbSession] autorelease];
[dialog show];
}
- (void)session:(FBSession*)session didLogin:(FBUID)uid {
NSLog(@"Hooray, I'm logged in to Facebook!");
}
抱歉在我上面的例子中有点含糊。老实说,我发现 FBConnect 有点神秘,并尽我所能在我的应用程序中实现它并尽快摆脱它。如果您需要更多信息,请告诉我,我会整理出更具体的答案。
根据以下要求:
你可以通过FBSession的+sessionForApplication:secret:delegate类方法得到一个FBSession对象。您在会话对象上调用 -resume。如果它返回YES,它会立即调用你的代理的-session:didLogin: 方法,这是你应该放置依赖于FB 的操作的地方。如果没有成功-resume,那么你需要创建一个FBLoginDialog,如上面代码sn-p所示。说得通?如果您需要更多信息,请告诉我
【讨论】: