gpt4 book ai didi

Facebook SDK 3.1.1 和 iOS 6.1 登录错误

转载 作者:行者123 更新时间:2023-12-02 10:51:03 25 4
gpt4 key购买 nike

我知道这看起来像是一个重复的问题,但我已经查看了与此相关的堆栈溢出的每个问题,但仍然收到以下错误:

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 类型 > Item 0 > URL Schemes > Item 0 > fb123456 和 FacebookAppID = 123456、键。

我正在尝试使用以下代码进行身份验证;

[FBSession openActiveSessionWithReadPermissions:permissions
allowLoginUI:YES
completionHandler:
^(FBSession *session,
FBSessionState state, NSError *error) {
[self sessionStateChanged:session state:state error:error];
}];

权限设置为零。

我的应用程序委托(delegate)中还设置了以下内容

- (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 进行身份验证。

返回的 session 是

<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 方法的失败尝试的本次 session 相比

<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 对象。

虽然这允许我继续使用登录 token 开发应用程序的其余部分,但这对于我实时发送应用程序来说是 Not Acceptable 。有谁知道为什么会发生这种情况/可能是什么原因造成的?

最佳答案

我在 2 个实例上遇到了相同的错误。

  1. 当您的 iPhone 中的“设置”->“Facebook”->“您的应用程序名称”下未打开开关时,以允许您的应用程序使用 facebook 帐户。在本例中,我将显示一条警报,要求用户打开应用程序的开关。

  2. 当您的应用程序的 bundle 标识符与您在 Facebook 应用程序设置页面上为应用程序指定的 bundle 标识符不匹配时。

由于即使没有互联网连接也会出现错误,我认为应该是情况 1。

关于Facebook SDK 3.1.1 和 iOS 6.1 登录错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14691444/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com