我知道这似乎是一个重复的问题,但我已经看过堆栈溢出相关的每一个问题,我仍然收到以下错误:Facebook的SDK 3.1.1和iOS 6.1登录错误
Error Domain=com.facebook.sdk Code=2 "The operation couldn’t be completed.
(com.facebook.sdk error 2.)" UserInfo=0x1ecbf8e0
{com.facebook.sdk:ErrorLoginFailedReason=com.facebook.sdk:ErrorLoginFailedReason}
这就是NSError的整个NSLog的..
我按照认证信教程;
- 在developers.facebook.com我有我的应用程序中的原生iOS应用,并把我的包ID
- 在我的info.plist我已经包括URL类型>项目0> URL方案>项目0> fb123456和FacebookAppID = 123456,键。
我正在尝试使用以下代码进行身份验证;
[FBSession openActiveSessionWithReadPermissions:permissions
allowLoginUI:YES
completionHandler:
^(FBSession *session,
FBSessionState state, NSError *error) {
[self sessionStateChanged:session state:state error:error];
}];
权限设置为零。
我也有以下在我的应用程序代理设置
- (void)applicationDidBecomeActive:(UIApplication *)application
{
[FBSession.activeSession handleDidBecomeActive];
}
- (void)applicationWillTerminate:(UIApplication *)application
{
[FBSession.activeSession close];
}
- (BOOL)application:(UIApplication *)application
openURL:(NSURL *)url
sourceApplication:(NSString *)sourceApplication
annotation:(id)annotation {
return [FBSession.activeSession handleOpenURL:url];
}
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
return [FBSession.activeSession handleOpenURL:url];
}
有一两件事我注意到的是,该错误消息命中我的屏幕附近瞬间后,我松开按钮,我把手机进入飞行模式,速度是一样的,我在想这个命令甚至不会离开手机,然后前往facebook服务器。我肯定有网络连接,因为我在facebook电话前访问google api时刻。
编辑:
如果我使用下面
[FBSession openActiveSessionWithPermissions:nil allowLoginUI:YES completionHandler:
^(FBSession *session,
FBSessionState state, NSError *error) {
[self sessionStateChanged:session state:state error:error];
}];
过时的方法,我能够与Facebook进行身份验证。
返回的会话是
<FBSession: 0x20038450, state: FBSessionStateOpen, loginHandler: 0x2006ba90, appID: 3895930xxxxxxxx, urlSchemeSuffix: , tokenCachingStrategy:<FBSessionTokenCachingStrategy: 0x1ed4ce30>, expirationDate: 2013-04-08 16:25:19 +0000, refreshDate: 2013-02-07 16:25:19 +0000, attemptedRefreshDate: 0001-12-30 00:00:00 +0000, permissions:(
)>
从与更新3.1.1方法
<FBSession: 0x1e8970b0, state: FBSessionStateClosedLoginFailed, loginHandler: 0x0, appID: 3895930xxxxxxxx, urlSchemeSuffix: , tokenCachingStrategy:<FBSessionTokenCachingStrategy: 0x1d5853b0>, expirationDate: (null), refreshDate: (null), attemptedRefreshDate: 0001-12-30 00:00:00 +0000, permissions:(
)>
我假设失踪loginHandler对象在成功登录时生成的失败尝试这个环节比较。
虽然这可以让我继续使用我的登录令牌开发应用程序的其余部分,但我不能接受现场发送我的应用程序。有谁知道为什么会发生这种情况/可能是由于什么原因造成的?
我刚刚尝试创建一个全新的Facebook应用程序,因为有我的帐户有一些奇怪的事情在那里,但没有,这还没有解决这个问题,我相信现在facebook sdk请求甚至不会离开我的设备,反应太快。 – Bongeh
我已经尝试重置所有证书和配置文件以确保在这方面没有任何问题,所有配置都是正确配置的,所以也不是这样。我希望在Facebook的开发者区域有一些关于这个错误的文档.. – Bongeh
如果我使用不赞成使用的方法,我可以登录,但这是不可接受的,我将更新我的帖子与我的更改。 – Bongeh