繁体   English   中英

解析和额外的Facebook权限(iOS)

[英]Parse and Additional Facebook Permissions (iOS)

在Parse(对于iOS)中有两种Parse方法可以重新授权Facebook用户(以获得额外的权限):

  • reauthorizeUser:withPublishPermissions:audience:block:
  • reauthorizeUser:withPublishPermissions:audience:target:selector:

不幸的是,这两种方法都适用于publishPermissions 我很困惑,因为在初次登录后似乎无法添加额外的读取权限(即扩展配置文件权限)。

Facebook建议,在进行一般登录时(即在应用程序打开时),您只需要基本权限,然后根据需要请求扩展权限,以免吓跑用户。

那么使用Parse和Facebook for iOS,这是否意味着我们需要在初次登录时询问我们可能需要的每一个读取权限?

总的来说,似乎Parse文档和框架似乎缺少很多Facebook在各种场景中登录的说明。 我们被指示查看Facebook SDK,但是所有内容似乎都适用于FBSession,并且不清楚哪些方法被Parse取代,除了Parse之外还需要哪些方法。

例如,我有一个应用程序,用户可以在应用程序启动时通过FB登录到Parse,但不是必须的。 如果他们登录,他们只会被要求提供基本权限,如FB所建议的那样。 然后,如果用户尝试执行某些操作,则会要求他们获取该特定操作的权限。 我有额外的读取权限需要为扩展的配置文件以及publish_actions授予。

在这种情况下,任何人都可以给我一些指导,或者指出我是一个非常彻底,最新的例子吗? Parse FB Scrumptious示例代码起初对我很有希望,但它已经过时了。

谢谢!

显然,有不止一种方法可以做到这一点。 我使用Parse for Android找到的最简单的是这样的:

   Collection<String> publishPermissions = Arrays.asList("publish_actions");
   ParseFacebookUtils.linkWithPublishPermissionsInBackground(user, myActivityOrFragment, publishPermissions, new SaveCallback() {...});

这意味着在登录后,您应该使用您的用户引用和新的权限列表调用linkWithPublishPermissionsInBackground。 它将打开一个新的Facebook窗口,询问该权限并将结果链接到您的用户。

这个代码我测试过它的工作原理。 但似乎Parse并不那么聪明,有些东西会自动完成而有些则不然。 所以在那之后你需要调用类似的东西:

   ParseFacebookUtilities.linkInBackground(ParseUser, AccessToken)

要将其实际保存到服务器上的用户,否则,它仅在App运行时才有效。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM