【问题标题】:Facebook FBWebDialogs params invite multiple friends at onceFacebook FBWebDialogs 参数一次邀请多个朋友
【发布时间】:2013-10-28 18:33:00
【问题描述】:

我在 FB 文档上找不到任何关于此的内容,但基本上我正在寻找的是能够将多个 FacebookId 添加到 FBWebDialogs 的参数中。这是我试图做的一个例子,但当然这是不对的:

NSMutableDictionary* params =   [NSMutableDictionary dictionaryWithObjectsAndKeys:
                                 facebookID1, @"to", 
                                 facebookID2, @"to",
                                 facebookID3, @"to",
                                 nil];

FBFrictionlessRecipientCache *friendCache = [[FBFrictionlessRecipientCache alloc] init];
[friendCache prefetchAndCacheForSession:nil];

[FBWebDialogs presentRequestsDialogModallyWithSession:nil
                                              message:[NSString stringWithFormat:@"هل سمعت باليومي؟ برنامج iPhone إخباري روعا"]
                                                title:nil
                                           parameters:params
                                              handler:^(FBWebDialogResult result, NSURL *resultURL, NSError *error) {
                                                  if (error) {
                                                      // Case A: Error launching the dialog or sending request.
                                                      NSLog(@"Error sending request.");
                                                  } else {
                                                      if (result == FBWebDialogResultDialogNotCompleted) {
                                                          // Case B: User clicked the "x" icon
                                                          NSLog(@"User canceled request.");
                                                      } else {
                                                          NSLog(@"Request Sent. %@", error);
                                                      }
                                                  }}
                                          friendCache:friendCache];

【问题讨论】:

  • 莫拉德,题外话,但你不应该有多个具有相同文本的键。在您的示例中,您添加了三次@"to"。这行不通。如果您打印字典,则只有一个条目。

标签: ios xcode facebook facebook-graph-api


【解决方案1】:

简单,把所有这些字符串放在一个数组中,然后params中的对象就是字符串数组,key是@"to"。

【讨论】:

  • 我怀疑这是否可行。 “to”参数只接受一个 Facebook ID。多个 ID 会导致错误。类似问题:stackoverflow.com/questions/19499378/…
  • "在 FBShareDialogParams 中,设置好友数组。工作正常。但仅在安装 Facebook 应用程序时工作。否则不起作用。"他错了,他不明白如果未安装应用程序,您不会收到通知,但您仍然会在应用程序中心的新闻提要的左下方收到应用程序请求警报。
  • 好的.. 但是从我的应用程序中,即使设备上未安装 FB 应用程序,我是否可以使用 FBShareDialogParams 进行共享?
  • 是的。正如我在上一条消息中所说,它确实会按照 facebook 希望您的方式向他们发送请求,即通过应用中心。
  • 如果你想在他们的墙上发帖,你不应该使用请求对话,而是使用提要对话:stackoverflow.com/questions/12122098/…
【解决方案2】:

对于 FBWebDialogs 参数中的多个 ID,您应该将键设置为“to[0]”、“to[1]”、...“to[n]”:

NSMutableDictionary* params =   [NSMutableDictionary dictionaryWithObjectsAndKeys:
                             facebookID1, @"to[0]", 
                             facebookID2, @"to[1]",
                             facebookID3, @"to[2]",
                             nil];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多