请求额外权限 Facebook SDK 4 iOS [英] Request additional permission Facebook SDK 4 iOS

查看:18
本文介绍了请求额外权限 Facebook SDK 4 iOS的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个通过 facebook 登录的应用程序.当它登录时,我只要求public_profile"、user_friends"和email"权限.正如 FB 所说,我知道我可以稍后请求更多许可:

I have an app that log in through facebook. When it log in, I only asked for "public_profile", "user_friends" and "email" permission. I know that I can ask for more permission later on, as FB stated:

您的应用可以随时请求其他权限,即使是在用户第一次登录之后.例如,publish_actions 权限允许您发布到某人的 Facebook 时间线.建议您仅在以下情况下请求此权限某人已准备好向 Facebook 发布故事."

"Your app can ask for additional permissions at any time, even after a person logs in for the first time. For example, the publish_actions permission lets you post to a person's Facebook Timeline. It's recommended you ask for this permission only when a person is ready to publish a story to Facebook."

所以当我要发布到用户的墙上时,我想询问publish_actions".请告诉我如何使用 Facebook SDK 4 进行操作.大多数答案与 FBSession、activeSession、requestNewPublishPermissions 等有关,但在最新的 Facebook SDK (4.1.0) 中,没有 FBSession 类.

So when I was about to post to user's wall, I want to ask for "publish_actions". Please tell me how to do it with Facebook SDK 4. Most of the answer relating to FBSession, activeSession, requestNewPublishPermissions, etc., but in latest Facebook SDK (4.1.0), there is no FBSession class.

推荐答案

你必须再次调用登录方法来请求另一个权限.

You have to call login method again to request another permission.

FBSDKLoginManager *loginManager = [[FBSDKLoginManager alloc] init];
[loginManager logInWithPublishPermissions:@[@"publish_actions"]
                                  handler:^(FBSDKLoginManagerLoginResult *result, NSError *error)
 {
     if ([result.declinedPermissions containsObject:@"publish_actions"])
     {
         // permission denied
     }
     else
     {
         // do something
     }
 }];

这篇关于请求额外权限 Facebook SDK 4 iOS的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆