Ios 在iPhone上安装Facebook应用程序时,Facebook登录失败
我正在忍受Facebook登录问题。如果iPhone上没有安装Facebook应用程序,则我会在浏览器上打开Facebook登录,在重新安装应用程序后它工作正常,但如果我在iPhone上安装Facebook应用程序并测试Facebook登录,它会通过我的应用程序,如果是第一次登录,它工作正常。在使用Facebook登录后,如果我删除并重新安装我的应用程序,则它不会打开登录页面,我会收到一个错误-“sso_密钥参数无效。密钥com.boxscoregames.S1与任何允许的捆绑ID不匹配。请在以下位置配置您的iOS捆绑ID” 这是我的Facebook登录代码-Ios 在iPhone上安装Facebook应用程序时,Facebook登录失败,ios,objective-c,xcode,facebook,Ios,Objective C,Xcode,Facebook,我正在忍受Facebook登录问题。如果iPhone上没有安装Facebook应用程序,则我会在浏览器上打开Facebook登录,在重新安装应用程序后它工作正常,但如果我在iPhone上安装Facebook应用程序并测试Facebook登录,它会通过我的应用程序,如果是第一次登录,它工作正常。在使用Facebook登录后,如果我删除并重新安装我的应用程序,则它不会打开登录页面,我会收到一个错误-“sso_密钥参数无效。密钥com.boxscoregames.S1与任何允许的捆绑ID不匹配。请在以
-(void)loginViewShowingLoggedInUser:(FBLoginView *)loginView
{
NSLog (@"You are logged in.");
}
-(void)loginViewFetchedUserInfo:(FBLoginView *)loginView user:(id<FBGraphUser>)user
{
NSLog(@"%@",user);
globalUserName = [NSString stringWithFormat:@"fb%@",[user objectForKey:@"id"]];
globalEmail = [user objectForKey:@"email"];
globalUserId = [user objectForKey:@"id"];
globalFirstName = [user objectForKey:@"first_name"];
globalLastName = [user objectForKey:@"last_name"];
globalProfilePic = user.objectID;
fbAccessToken = [[[FBSession activeSession]accessTokenData]accessToken];
hud = [appDel indicator];
[self.view addSubview:hud];
BOOL internetBool = [appDel isInternetReachable];
if (internetBool) {
NSLog(@"Internet is there");
[hud show:YES];
[self fbLoginWebService]; }
else
{
[self showAlertWithMessage:@"No network connection. Please try again."];
}
}
-(void)loginViewShowingLoggedOutUser:(FBLoginView *)loginView
{}
-(void)loginView:(FBLoginView *)loginView handleError:(NSError *)error
{
NSLog(@"%@",[error localizedDescription]);
}
-(void)loginView显示日志用户:(FBLoginView*)loginView
{
NSLog(@“您已登录”);
}
-(void)loginView蚀刻教育信息:(FBLoginView*)loginView用户:(id)用户
{
NSLog(@“%@”,用户);
globalUserName=[NSString stringWithFormat:@“fb%@”,[user objectForKey:@“id”];
globalEmail=[user objectForKey:@“email”];
globalUserId=[user objectForKey:@“id”];
globalFirstName=[user objectForKey:@“first_name”];
globalLastName=[user objectForKey:@“last_name”];
globalProfilePic=user.objectID;
fbAccessToken=[[FBSession activeSession]accessTokenData]accessToken];
hud=[appDel指示器];
[self.view addSubview:hud];
BOOL internetBool=[appDel isInternetReachable];
国际单项体育联合会(internetBool){
NSLog(“互联网就在那里”);
[抬头显示器显示:是];
[自助fbLoginWebService];}
其他的
{
[self-showAlertWithMessage:@“没有网络连接。请重试。”;
}
}
-(无效)loginView显示LoggeDoutUser:(FBLoginView*)loginView
{}
-(无效)loginView:(FBLoginView*)loginView句柄错误:(N错误*)错误
{
NSLog(@“%@,[错误本地化描述]);
}
你找到那个URL了吗?如果是这样,您将看到在那里配置的bundle ID不是com.boxscoregames.S1,这就是SSO失败的原因
如果com.boxscoregames.S1是您的bundle ID,那么您应该在iOS部分中为添加该ID。我知道我迟到了,但有人可能会觉得这很有帮助。 正如李明所说,您的捆绑id有问题。您必须将其更改为Xcode的bundle ID。两个id必须匹配。最简单的方法是遵循“向我们提供您的捆绑包标识符”部分中的快速启动指南,只需复制并粘贴您的Xcode捆绑包ID。
它对我有效。但如果它通过浏览器运行,则工作正常。这是因为浏览器无法检查调用应用程序的捆绑ID。我使用以下代码解决了问题“\u loginButton.loginBehavior=FBSessionLoginBehaviorForcingSafari;”。非常感谢您的回复。请不要这样做。对于那些实际安装了FB应用程序的人来说,这是一个糟糕得多的用户体验(它将进入Safari,在那里他们可能不会登录Facebook,并将被迫登录)。只需在应用程序中修复捆绑包ID。如果你不修复你的包ID,使用SDK会有其他问题。谢谢你,这也帮了我的忙!