我知道這似乎是一個重複的問題,但我已經看過堆棧溢出相關的每一個問題,我仍然收到以下錯誤: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