FBSDKAppInviteDialog 检查我刚刚邀请了多少朋友

Posted

技术标签:

【中文标题】FBSDKAppInviteDialog 检查我刚刚邀请了多少朋友【英文标题】:FBSDKAppInviteDialog check how many friends i have just invited 【发布时间】:2015-12-04 14:53:55 【问题描述】:

我正在使用 ios 应用程序中的 FBSDKAppInviteDialog。我已经实现了我的代码,因为这个问题显示:

question

到目前为止,我无法从委托中返回与 nil 不同的值:

 -(void)appInviteDialog:(FBSDKAppInviteDialog *)appInviteDialog didCompleteWithResults:(NSDictionary *)results


NSLog(@"result::%@",results);

所以我不知道返回字典的性质...我需要知道我刚刚在 FBSDKAppInviteDialog 中邀请了多少朋友,这个数字(正如我在正常流程中所期望的那样)在结果字典中?

【问题讨论】:

这是不可能的,邀请对话框不会为您提供该信息。 (如果您询问的原因是您想以某种方式奖励发送邀请的用户,请注意这是不允许的。) 谢谢您,将此评论作为答案发表,我将其标记为正确 你能指出我的文档,在哪里声明了不允许奖励用户?我找不到它... 添加了一个答案,以及指向平台政策的链接,其中说您不能奖励发送 inivtes 的用户。 (但您可以奖励他们成功的邀请。) 【参考方案1】:

这是不可能的,邀请对话框不会为您提供该信息。


如果您询问的原因是您想以某种方式奖励发送邀请的用户,请注意这是不允许的。

这在Platform Policy, 4.5 中有说明:

“仅激励用户登录您的应用、在您的应用页面上输入促销信息或在某个地点签到。不要激励其他行为。”

image linked there with the question mark 通过一些例子进一步解释了这一点——正如你所看到的,中间的例子就是这样,奖励用户邀请人。

但是,您可以奖励成功邀请的用户(上图右侧的示例)。如果用户 A 邀请 B,然后 B 根据该邀请采取行动并加入您的应用,那么您可以奖励 A 成功邀请新成员。如果您想实现它,那么您需要阅读详细信息,如果您在用户对邀请采取行动时通过了请求 ID,请参阅https://developers.facebook.com/docs/games/requests/v2.5#rewarding(但是,这仅适用于到达您的画布的用户,其中您将获得作为 GET 参数传递的请求 ID。我不知道如果用户在单击邀请时被重定向到应用商店,这是否也可能。)

【讨论】:

非常感谢,最后一件事...对于非游戏的ios应用也有效?

以上是关于FBSDKAppInviteDialog 检查我刚刚邀请了多少朋友的主要内容,如果未能解决你的问题,请参考以下文章

FBSDKAppInviteDialog 总是关闭和结果的奇怪行为(null)

iOS 9 和 10 (FB SDK 4.2.0) 上的 FBSDKAppInviteDialog 停止在“showFromViewController”上加载

使用 Prisma 检查对象所有权

用 Optional#ifPresent 替换空检查的好处 [重复]

检查“与外部库链接”示例时的矛盾结果

在 IDE 对象检查器中动态显示/隐藏属性?