使用 sdk 4 的 Facebook 自定义登录 UI

Posted

技术标签:

【中文标题】使用 sdk 4 的 Facebook 自定义登录 UI【英文标题】:Facebook Custom login UI with sdk 4 【发布时间】:2015-08-14 05:36:52 【问题描述】:

我在 Facebook 开发者页面使用此代码进行自定义登录 ui,它给了我一条日志消息“FBSDKLog:从 Graph API v2.4 开始,对 /me 的 GET 请求应包含显式的“字段”参数”。请告诉我如何删除它

FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
    [login logInWithReadPermissions:@[@"public_profile"] handler:^(FBSDKLoginManagerLoginResult *result, NSError *error)
    
        NSLog(@"%@", result);
       if (error)
        

        
        else if (result.isCancelled)
        
        
        else
        
           if ([result.grantedPermissions containsObject:@"email"])
            

            
        
    ];

【问题讨论】:

【参考方案1】:

使用 FBLoginManager 应用程序会在任何成功登录后自动获得 public_profile 权限。您无需再次请求。如果您需要电子邮件。试试

FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
[login logInWithReadPermissions:@[@"email"] handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) 
  if (error) 
    // Process error
   else if (result.isCancelled) 
    // Handle cancellations
   else 
    // If you ask for multiple permissions at once, you
    // should check if specific permissions missing
    if ([result.grantedPermissions containsObject:@"email"]) 
      // Do work
    
  
];

【讨论】:

以上是关于使用 sdk 4 的 Facebook 自定义登录 UI的主要内容,如果未能解决你的问题,请参考以下文章

无法识别的选择器在 iOS9 上的 facebook sdk 4.6 中发送到 facebook 登录管理器的实例

Android Facebook sdk 覆盖登录按钮

Facebook android sdk 登录权限问题

facebook iOS sdk 自定义委托和 SSO 授权

无法使用 api v2.4 在 ios 中使用自定义按钮登录 facebook

如何在不使用 Facebook 登录/注销按钮的情况下以编程方式从 Facebook SDK 3.0 注销?