繁体   English   中英

如何检查用户是否已授予特定权限Facebook iOS

[英]How to check if a user has granted a certain permission Facebook iOS

在我的iOS应用中,我只想检查用户是否已授予Facebook publish_stream权限。

我不确定如何处理来电回应

[facebook requestWithGraphPath:@"me/permissions" andDelegate:self];

在我的FBRequest委托方法中。 我试过了:

if (request == self.permissionRequest) {
        NSString *key = [result objectForKey:@"publish_stream"];
        DLog(@"Key: %@", key);
    }

但是我得到空。

如果我尝试

    id *key = [result objectForKey:@"publish_stream"];
int keyInt = [key integerValue];
DLog(@"Key: %i", keyInt);

我总是得到0。即使我知道权限处于活动状态,也...

这是我为create_events做的一个工作示例。 确保可以将其用于其他人:

FBRequest *eventPostOK = [FBRequest requestWithGraphPath:@"me/permissions" parameters:Nil HTTPMethod:@"GET"];
[eventPostOK startWithCompletionHandler: ^(FBRequestConnection *connection,
NSDictionary* result,
NSError *error) {
      BOOL canDoIt = FALSE;
      if (!error)
      {
         FBGraphObject *data = [result objectForKey:@"data"];
         for(NSDictionary<FBGraphObject> *aKey in data) {
             canDoIt = [[aKey objectForKey:@"create_event"] boolValue];
             }
      }
      else
         NSLog(@"%@", error);

      NSLog(@"%@", canDoIt ? @"I can create Events" : @"I can't create Events");
      }];

您可以使用带有“我/权限”的开放图谱API进行FBRequest。 它将返回一个带有字典的响应,其中的关键是权限。 将会关联一个值(1 =是,0 =否)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM