我在我的应用程序上使用此代码启动Facebook登录:
[FBSession openActiveSessionWithReadPermissions:nil allowLoginUI:YES
completionHandler:^(FBSession *session,
FBSessionState status,
NSError *error) {
NSLog(@"#####################");
// session might now be open.
[self sessionStateChanged:session state:status error:error];
}];
Safari启动,但我得到了:
我读到这个错误与plist文件中的URL键有关,一切看起来都没问题
以下是facebook app的一些设置:
这很奇怪。当然,我仔细检查fb ID和包标识符......
有什么想法吗?
由于
更新
我只在模拟器上收到此错误消息。在真实设备上,我得到另一个:
您可以看到我上次更改了应用ID。我只是创建另一个Facebook应用程序(我也更改了包ID)
当然,我仔细检查我的ios应用程序和Facebook应用程序设置中的应用程序ID和包ID是否相同...那么为什么它说应用程序ID无效?
答案 0 :(得分:0)
附上我的Facebook应用设置以供参考!
答案 1 :(得分:0)
我认为问题不在于plist文件中的URL Scheme。
在此related post中,您可以看到redirect_uri必须设置为完整的URL,以便在登录过程完成后将用户重定向到该URL。 但我认为redirect_uri不能通过Facebook从iOS应用程序登录。
从我的观点来看,有两种方法可以探索解决这个问题:
答案 2 :(得分:0)
If you are using Facebook SDK, you don't need to bother yourself to enter anything for redirect URI on the app management page of facebook. Just setup a URL scheme for your iOS app. The URL scheme of your app should be a value "fbxxxxxxxxxxx" where xxxxxxxxxxx is your app id as identified on facebook. To setup URL scheme for your iOS app, go to info tab of your app settings and add URL Type.