如果我们按照 Facebook 的指示在 SDK 中指定 v1.0,那么完全不熟悉我们的 iOS 应用程序的用户是不是仍然可以使用 Facebook Graph API v1.0 登录?
Posted
技术标签:
【中文标题】如果我们按照 Facebook 的指示在 SDK 中指定 v1.0,那么完全不熟悉我们的 iOS 应用程序的用户是不是仍然可以使用 Facebook Graph API v1.0 登录?【英文标题】:Can users completely new to our iOS app still login with Facebook Graph API v1.0 if we specify v1.0 in the SDK as directed by Facebook?如果我们按照 Facebook 的指示在 SDK 中指定 v1.0,那么完全不熟悉我们的 iOS 应用程序的用户是否仍然可以使用 Facebook Graph API v1.0 登录? 【发布时间】:2014-06-14 03:08:37 【问题描述】:我们知道如何调用 Facebook Graph API v1.0 并在 ios SDK (https://developers.facebook.com/docs/apps/upgrading) 中调用它,但新用户被视为使用 v2.0 注册。
我们知道,一旦用户通过 Graph API v2.0 登录,该个人用户 (http://code-worrier.com/blog/changes-in-facebook-graph-api-2-dot-0/) 将无法返回 v1.0,但有人知道您的应用程序的所有新用户是否都会自动登录通过 v2.0 并且只有以前的用户可以登录 v1.0?我们使用的是 Facebook iOS SDK v3.14。
非常感谢。
【问题讨论】:
【参考方案1】:自 2014 年 4 月 30 日以来注册您的应用程序的新用户将返回应用程序范围的 ID。您在 API 请求的 URL 中使用的版本不会改变。
【讨论】:
非常感谢!我注意到了这一点,这让我很担心,但对我们来说最有价值的是如果用户授予我们权限(v1.0),则可以访问他们的完整好友列表。现在我们只能向他们的朋友展示已经拥有该应用程序(v2.0)的人。 Facebook 到处都写道,他们将在 2015 年 4 月 30 日之前支持 Graph API v1.0。 无论他们何时注册,都没有更多完整的朋友列表。你必须使用 invitable_friends 或 taggable_friends。 谢谢,非常感谢!奇怪的是,我们所有在 2014 年 4 月 30 日之前拥有该应用程序的现有用户,在他们去组群时仍然能够看到他们的整个朋友列表(这是应用程序的主要焦点),甚至那些不在应用程序上的朋友。 Facebook 已经表示他们将支持版本化 API 和 v1.0,这意味着您应该能够在 v1.0 中调用friend_list。 我的错。它只适用于在 2014 年 4 月 30 日之前注册的人。【参考方案2】:我们发现:您仍然可以登录/使用旧版本的 Facebook API (v1.0)。问题是您的应用调用的 API 版本取决于您在应用中使用的 Facebook iOS SDK 版本。因此,如果您想跳回到 v2.0 之前的 Facebook API,您需要使用旧版本的 Facebook iOS SDK(3.13.1 和更早版本)。它们都可以在这里找到:https://developers.facebook.com/docs/ios/downloads
请记住,Facebook 正在强制开发人员在 2015 年 4 月 30 日之前升级到 v2.0。但是,如果您现在对 v2.0 感到头疼并且不想立即修复,那么这是一个不错的乐队-援助解决方案。在我们的应用程序中,我们升级了 Facebook iOS SDK 以符合 Apple 的 IDFA 法规,但并不知道我们正在升级到 Facebook API 的 v2.0。由于我们的应用使用了 v2.0 中不再提供的一些功能,因此这是一个大问题。
在您使用 v2.0 时可能已注册您的应用的任何用户可能需要删除 Facebook 上的应用相关信息,以便在您跳回 v1.0 时重新登录。这将允许您获取真实的 Facebook 用户 ID,而不是应用范围内的用户 ID。
最后一个小障碍是,Apple 现在拒绝了许多(如果不是全部)使用 IDFA 的应用程序。所有使用 v1.0 的 Facebook SDK 都使用 IDFA(据我所知)。解决它的唯一方法是告诉 Apple 您正在使用它,但它归因于以前提供的广告(您在 iTunes Connect 上执行此操作)。在这里看到这篇文章:http://www.adexchanger.com/mobile/apple-throws-a-bone-to-app-marketers-blesses-idfa-for-attribution/
同样,这不一定是一个“正确”的解决方案,但如果您现在没有足够的带宽/资源来解决您的 v2.0 问题,它绝对可以提供帮助。请务必在 2015 年 4 月 30 日之前恢复到 v2.0。
【讨论】:
以上是关于如果我们按照 Facebook 的指示在 SDK 中指定 v1.0,那么完全不熟悉我们的 iOS 应用程序的用户是不是仍然可以使用 Facebook Graph API v1.0 登录?的主要内容,如果未能解决你的问题,请参考以下文章