【问题标题】:Why is a private Facebook post via iOS ACAccountStore visible to the public?为什么公众可以看到通过 iOS ACAccountStore 发布的私人 Facebook 帖子?
【发布时间】:2016-02-11 22:55:11
【问题描述】:

在 iOS 应用程序(Objective-C)中,我发送带有视频的消息,用户可以选择它是私有的、供朋友使用的还是对公众可见的。 这在很长一段时间内都运行良好,但我最近发现使用“audience = ACFacebookAudienceOnlyMe”发送的消息也对公众可见。使用“audience = ACFacebookAudienceFriends”发帖仍按预期工作。 我的代码没有改变,我不知道这种行为是否出现在 iOS9 中,或者是否是 Facebook 的问题。 有没有人注意到类似的行为?

相关代码为:

NSString * audience;
switch ([[messageOptions objectForKey:@"permission"]intValue]) {
case 0:
    audience = ACFacebookAudienceOnlyMe;
    break;
case 1:
    audience = ACFacebookAudienceFriends;
    break;
case 2:
    audience = ACFacebookAudienceEveryone;
    break;
default:
    audience = ACFacebookAudienceOnlyMe;
    break;
}

NSMutableDictionary *dict = [[NSMutableDictionary alloc]      initWithObjectsAndKeys:@"XXXXMyAppIDKeyXXXX", ACFacebookAppIdKey, permissions, ACFacebookPermissionsKey, audience, ACFacebookAudienceKey, nil];
__block ACAccount * facebookAccount;
[self.accountStore requestAccessToAccountsWithType:facebookAccountType options:dict completion:^(BOOL granted, NSError *error) {
    if (granted && error == nil) {... send message and video here..}

在发送前直接使用 NSLog 打印时,字典“dict”看起来像这样:

   {
    ACFacebookAppIdKey = XXXXMyAppIDKeyXXXX;
    ACFacebookAudienceKey = me;
    ACFacebookPermissionsKey =     (
        "publish_actions"
    );
    }

为朋友发帖时 ACFacebookAudienceKey 是“朋友”。

【问题讨论】:

  • 我还没有听说过这样的行为,但是在developers.facebook.com/bugs 上为此创建一个错误报告并没有什么坏处。请务必提供可用于以与您的应用相同的方式发布视频的示例项目以及显示此行为的帖子中的一些示例 ID。

标签: ios objective-c facebook facebook-graph-api acaccountstore


【解决方案1】:

这似乎是一个暂时的问题,几周后我无法重现该行为。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-12-14
    • 2013-04-08
    • 1970-01-01
    • 2018-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多