• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

ios - 如何使用 URL Scheme 在应用程序中打开社交应用程序登录

[复制链接]
菜鸟教程小白 发表于 2022-12-13 11:41:43 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我已经看到描述这些事情的示例和堆栈溢出问题。

问题是,

如果我在 safari 中打开社交登录,Apple 会拒绝申请。

大多数示例都与使用 safari 打开社交登录有关,但并不完全符合我的要求。

我想使用 Facebook SDK 并在应用程序中打开登录弹出窗口。

我认为这可以使用 URL Scheme 处理来实现,但我不知道该怎么做。

我看到 Facebook 提供 FBSDKLoginBehaviorWeb(感谢@Anbu.Karthik 通知我这件事)

但谷歌、Instagram、Twitter、Linked In 等其他应用也需要在应用内集成。 因此,如果应用程序有任何一般行为将 URL 重定向到在应用程序内的 Webview 中打开,那就更好了。

非常感谢,



Best Answer-推荐答案


是的,你是对的,你需要一点点自定义 URL Scheme 处理。

Here is example code

基本上,您需要在 .pList 文件中添加 Principle UIApplication 类,如下图所示,并在您获取应用 ID 的 URL 登录时添加通知中心。 enter image description here

然后,(Application.m)

- (BOOL)openURLNSURL*)url {
    if ([[url absoluteString] hasPrefix"https://m.facebook.com/v2.2/dialog/oauth?sdk_version="]) {
        [[NSNotificationCenter defaultCenter] postNotificationName:ApplicationAuthNotificationFB object:url];

        return NO;
    }
    return [super openURL:url];
}

和 在您的 ViewController 中注册通知,(ViewController.m)

[[NSNotificationCenter defaultCenter] addObserver:self
                                             selectorselector(callLoginPopup
                                                 name"ApplicationAuthNotificationFB"
                                               object:nil];

处理URL的方法(ViewController.m)

-(void)callLoginPopupNSNotification *)notif{
    NSLog(@"URL To Handle ===> %@", [notif object]);
}

您可以修改此示例以在您的应用中实现其他社交登录。

关于ios - 如何使用 URL Scheme 在应用程序中打开社交应用程序登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32518167/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap