ios – 如何获取尚未安装应用程序的Facebook朋友的列表?

我正在开发一个社交网络应用程序.我在我的iOS应用程序中集成了SDK SDK 3.14.现在,我想得到我所有的Facebook朋友的列表,所以我可以邀请没有使用该应用的朋友,并发送朋友的请求给那些已经安装该应用的朋友.

我可以使用“/ me / friends”获取已经使用我的应用程序的朋友的列表.

[FBRequestConnection startWithGraphPath:@"/me/friends"
                             parameters:nil
                             HTTPMethod:@"GET"
                      completionHandler:^(FBRequestConnection *connection,id result,NSError *error) {
                          NSLog(@"All == %@",result);
                      }];

它给朋友的Facebook ids(ex.id = 654330727444458)作为回应,以便我可以发送朋友的请求给他们.

要获得没有下载应用程序的所有Facebook朋友的列表,如果我想邀请他们,我需要让所有的朋友使用“我/ taggable_friends”(请纠正我,如果我错了).

[FBRequestConnection startWithGraphPath:@"/me/taggable_friends"
                             parameters:nil
                             HTTPMethod:@"GET"
                      completionHandler:^(FBRequestConnection *connection,NSError *error) {
                          NSlog("%@",result);
                      }];

在taggable_friends响应中,我将朋友的id作为id =“AaLYBzZzHdzCmlytqyMAjO0OLDZIOs74Urn93ikeRmmTB3vX_Xl81OYUt4XnoWG0BDLuX67umVkheVdDjzyvm0fcqMqu84GgM9JnNHc-1B63eg”,这是朋友的令牌ID,它不是唯一的.我不能使用它,而是使用Facebook的朋友的Id来邀请他们.不幸的是,我无法得到它在标签的朋友的回应.

解决方法

这只能在Facebook API v1上停止,这个API v1将在4月左右停止工作.即使现在只有现有的Facebook应用程序将允许您使用V1,如果您没有足够的应用程序,您无法做到这一点.在V2中,您只能获得还登录到同一应用程序的朋友,但用户标识对应用程序是唯一的,以防止这一点.我猜Facebook的原因是通过这样做可以阻止人们通过应用程序垃圾邮件给他们:

如@joelrb所说,您可以为游戏创建一个画布应用程序,并使用invitable_friends,但是FB会检查您的“游戏”,以便您无法真正作弊.

有关更多信息,请参阅https://developers.facebook.com/docs/apps/changelog/.

TLDR;张贴到墙上是你可以做的.强硬.抱歉.

相关文章

当我们远离最新的 iOS 16 更新版本时,我们听到了困扰 Apple...
欧版/美版 特别说一下,美版选错了 可能会永久丧失4G,不过只...
一般在接外包的时候, 通常第三方需要安装你的app进行测...
前言为了让更多的人永远记住12月13日,各大厂都在这一天将应...