ios - 使用本机 Facebook 应用进行身份验证时,iOS 应用登录 Facebook 失败
问题描述
我有一个支持用户使用 Facebook 登录的 iOS 本机应用程序。该应用程序在我的手机上运行良好:
- 我启动我的应用程序并点击 Facebook SDK 提供的“使用 facebook 登录”
- Facebook SDK 在我的应用程序内打开一个 Web 视图,要求使用我的应用程序登录(我的应用程序已在 Facebook 开发人员门户中注册)
- 我输入了我的 Facebook acc 详细信息,因此 webveiw 以登录成功结果关闭。
然而,今天我的一位应用客户给我发了一张截图,上面显示:
- 他在他的 iPhone 上启动了我的应用程序,然后点击“使用 facebook 登录”按钮
- 在他的手机上,Facebook SDK 没有显示用于登录的 Web 视图,而是显示了一个按钮“使用 Facebook 应用程序登录”
- 然后他点击“打开”,Facebook 原生应用程序启动,出现错误消息“登录错误:登录此应用程序时出错”。我在 Facebook 开发者门户中注册的应用程序徽标甚至没有显示。
对我来说,这看起来像是 Facebook SDK 或 Facebook 开发人员门户设置问题,因为在用户点击我的应用程序上的 Facebook 按钮登录后,它进入 Facebook 登录工作流程并且根本不与我的代码交互。
请帮忙。或者,您能否让我知道如何在我的手机上使用“使用 Facebook 应用程序登录”,以便我至少可以进行调试。现在我尝试在我的 iPhone 上安装 Facebook 原生应用程序,但没有成功。
太感谢了!
客户 iOS 版本:14.3,Facebook iOS SDK 版本:9.3.0
顺便说一句,我在我的objective-c中实现了以下代码,但没有帮助:
AppDelegate.m
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url options:(nonnull NSDictionary<UIApplicationOpenURLOptionsKey, id> *)options {
[[FBSDKApplicationDelegate sharedInstance] application:application openURL:url options:options];
return YES;
}
场景委托.m
- (void)scene:(UIScene *)scene openURLContexts:(NSSet<UIOpenURLContext *> *)URLContexts
{
UIOpenURLContext *context = URLContexts.allObjects.firstObject;
[FBSDKApplicationDelegate.sharedInstance application:UIApplication.sharedApplication
openURL:context.URL
sourceApplication:context.options.sourceApplication
annotation:context.options.annotation];
return;
}
解决方案
推荐阅读
- php - 如何使用 symfony 3.4 在 ExceptionController 中获取翻译器对象
- python - 使用 selenium python web 驱动程序从角度单击表中的所有行
- appium - 在字段上输入文本的替代方法
- bash - 在单个命令中获取令牌
- html - CSS 格式问题,div 相互移动,div 不居中
- image-processing - 尝试在 PNG 周围添加笔画,可以改进吗?
- forms - 我无法恢复控制器中复选框的值
- c++ - 在标准布局对象(例如,使用 offsetof)中进行指针运算时,我们是否需要使用 std::launder?
- android - Google 街景应用(不是 Google 地图)的 URL 方案或意图
- python - 如何验证时间窗口之间是否存在重叠