Facebook SDK iOS 邀请没有 FBWebDialogs 的用户

Posted

技术标签:

【中文标题】Facebook SDK iOS 邀请没有 FBWebDialogs 的用户【英文标题】:Facebook SDK iOS invite user without FBWebDialogs 【发布时间】:2013-08-26 13:19:10 【问题描述】:

我想从 Facebook 获取不是我的应用用户的朋友列表,并能够邀请他们。

使用FBWebDialogs 我可以选择用户,但我想知道foursquare 是如何做到的? 截图:

【问题讨论】:

【参考方案1】:

frictionless requests的选项。 在 Facebook 开发者网站上,他们在Invites and Requests 部分提到了

我们谈到了用户来回交换请求的场景。如果这种情况在您的游戏中很常见,那么每次他们想要发送请求时都强制他们通过请求对话框可能会带来不好的用户体验。解决此问题的方法是无摩擦请求。 无摩擦请求允许用户从应用程序向朋友发送请求,而无需单击弹出确认对话框。向朋友发送请求时,用户可以授权应用程序向同一朋友发送后续请求,而无需其他对话。这简化了与朋友分享的过程。

更多参考请见Facebook Invites and Requests

【讨论】:

是的,但我想避免使用 WebDialog :| 看,没有任何其他图形 api 像在不打开 web 视图的情况下获取用户信息。因此,如果您使用无摩擦请求,则需要打开一次 webview。 Foursquare 的例子怎么样?他们与 Facebook 有什么特别的交易? 我会注意到应用程序“circle”也这样做(令人讨厌和垃圾邮件imo)。但是,根据我的研究,无摩擦请求就是答案。【参考方案2】:

你在这里问了两个问题:

如何在没有网络对话的情况下邀请 Facebook 好友?

很遗憾,您所指的网络对话是向朋友发送邀请的最佳方式。曾经有一段时间,我们不得不求助于丑陋的 hack,只是为了在应用程序中获得这个功能。 Facebook 在开发人员创建错误报告并支持他们之后将这一功能添加到 ios SDK。

获取未使用应用的好友列表并邀请他们

Foursquare IMO 未使用请求 API。他们所做的是,每当有人将他们的 Facebook 帐户链接到他们的 Foursquare 帐户时,他们都会记录正在使用/未使用该应用程序的用户朋友。如果用户授予应用权限,这是可能的。

然后在邀请屏幕中,他们只需构建一个 UITableView,其中包含他们认为未使用该应用的朋友列表。当您点击邀请时,他们只会发送电子邮件邀请,而不是您所指的 Facebook 请求。

【讨论】:

【参考方案3】:

我认为 FourSquare 将用户的朋友列表(朋友 ID)同步到自己的服务器。然后他们检查它以创建自定义界面,如您共享的屏幕截图。

【讨论】:

【参考方案4】:

也许我没有回答正确的问题,但据我所知,在您点击 Foursquare 上的邀请按钮后,Facebook 邀请对话框(apprequest)将弹出。

一般来说,如果您在显示之前没有指定任何朋友 ID,则此对话框将让您选择朋友,或者像 Foursquare 示例中那样向您显示选择的朋友。 有一个 API 可以获取您的 FB 好友,因此您的服务器可以检查女巫是否已经拥有该应用程序...

【讨论】:

【参考方案5】:

正如 Rahul Patel 所说,我已经对此进行了一段时间的研究,我发现的主要解决方案是无摩擦请求。您可以直接向图形 API 和 see who has your app installed 请求。

从那里您可以相当轻松地实现任何类型的过滤。例如,使用Friend Picker UI Control 并实现friendPickerViewController:shouldIncludeUser: 方法并检查不在应用程序上的Facebook id 列表,这些用户缓存在应用程序的其他位置并主动更新它(例如在简单的核心数据模型中)在 appDidFinishLaunching 时更新),如果未显示用户,则返回 no。这将只允许用户选择不在应用程序上的个人,然后您可以通过无摩擦请求向他们发送请求。

我确实认为向人们发送垃圾邮件并不是一个好主意,但至少不允许他们查看朋友的姓名或查看他们是谁。

【讨论】:

以上是关于Facebook SDK iOS 邀请没有 FBWebDialogs 的用户的主要内容,如果未能解决你的问题,请参考以下文章

我是 iOS 版 Facebook SDK 的新手。我想向 Facebook 上的朋友发送邀请

Facebook 应用程序邀请 iOS v4 SDK 错误

Facebook 应用程序邀请 iOS v4 SDK 错误

Facebook 应用邀请在使用 Facebook SDK 4.X 的 iOS8 中不起作用?

Facebook SDK 4.0 AppInvite 没有收到任何通知

缩小了最后一个 FB iOS SDK 的 iOS 9 上的 Facebook 应用邀请