菜鸟教程小白 发表于 2022-12-12 17:54:04

ios - 如何在 ios 上获取通过 Facebook 登录的用户的名字?


                                            <p><p>我正在使用以下 api 调用来获取通过 facebook 登录的用户的信息... </p>

<p>首先我调用 FBSDKLoginManager 的这个方法。</p>

<pre><code>- (void)logInWithReadPermissions:(NSArray *)permissions
            fromViewController:(UIViewController *)fromViewController
                         handler:(FBSDKLoginManagerRequestTokenHandler)handler;
</code></pre>

<p>一旦登录成功,我就会调用下面的方法。</p>

<pre><code>    NSMutableDictionary* parameters = ;
    ;
    [[ initWithGraphPath:@&#34;me&#34; parameters:parameters]
                        startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id user, NSError *error) {
                              if (!error) {
                                  [ graphUser:user];
                              }
                        }];
</code></pre>

<p>我的意思是 FBSDK 包含一个名为 FBSDKProfile 的类。
这有一些我可以使用的属性,比如名字中间名和其他。我怎样才能访问这个..?因为即使在登录后,这个类的共享实例也给我 nil。</p>

<pre><code>NSLog(@&#34;name %@&#34;, .firstName);
</code></pre>

<p>我在这里错过了什么吗..?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>您只需要在参数中使用 <strong><code>first_name</code></strong>。</p>

<p>查看示例代码以获取<strong>名字</strong>。</p>

<pre><code>[[ initWithGraphPath:@&#34;me&#34;
                                 parameters:@{@&#34;fields&#34;: @&#34;first_name&#34;}]
                   startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {

         NSString *name;
         if (!error) {
             name = result[@&#34;first_name&#34;];
         }
}];
</code></pre>

<p>如果您需要其他字段,请参阅此处的列表:<a href="https://developers.facebook.com/docs/graph-api/reference/v2.2/user" rel="noreferrer noopener nofollow">https://developers.facebook.com/docs/graph-api/reference/v2.2/user</a> </p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 如何在 ios 上获取通过 Facebook 登录的用户的名字?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/34320157/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/34320157/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 如何在 ios 上获取通过 Facebook 登录的用户的名字?